8
這是我第一天與Rust,但我試圖做一些微不足道的事情,而且我被卡住了。不能在'Fn`閉包中借用捕獲的外部變量作爲可變
我想要做的是將一個結構添加到向量,並返回結果。我正在嘗試創建一個非常簡單的REST服務,它將在發佈時將數據存儲在內存中,並在執行GET時返回JSON格式的所有數據。
這是我當前的代碼:
fn main() {
let mut server = Nickel::new();
let mut reservations = Vec::new();
server.post("/reservations/", middleware! { |request, response|
let reservation = request.json_as::<Reservation>().unwrap();
reservations.push(reservation); // <-- error occurs here
format!("Hello {} {}", reservation.name, reservation.email)
});
server.listen("127.0.0.1:3000");
}
我試圖this solution有RefCell,但後來我得到性狀的同步還沒有爲Vec<reservation::Reservation>