Rustを使用してMongoDBデータベースのコレクション内のフィールドを更新しようとしています。私はこのコードを使用していた。RustでMongoDBのデータを更新する
extern crate mongodb;
use mongodb::{Client, ThreadedClient};
use mongodb::db::ThreadedDatabase;
fn main() {
let client = Client::connect("ipaddress", 27017);
let coll = client.db("DEV").collection("DEV");
let film_a = doc!{"DEVID"=>"1"};
let filter = film_a.clone();
let update = doc!{"temp"=>"5"};
coll.update_one(filter, update, None).expect("failed");
}
これは、更新が唯一のいくつかの検索の後、私は$set
を使用する必要があります意味のようです$
オペレータ、で動作しますと言って私にエラーを与えます。私はこれのさまざまなバージョンを試してきましたが、型のミスマッチエラーなどしか得られません。
coll.update_one({"DEVID": "1"},{$set:{"temp" => "5"}},None).expect("failed");
どこが間違っていますか?
DBはこのように見えます。
db.DEVICES.find()
{ "_id" : ObjectId("59a7bb747a1a650f1814ef85"), "DEVID" : 1, "temp" : 0,
"room_temp" : 0 }
{ "_id" : ObjectId("59a7bb827a1a650f1814ef86"), "DEVID" : 2, "temp" : 0,
"room_temp" : 0 }
iveは、引用符と他のものの束でセットを囲んでみたが、それはまだ働いていない、私はちょうど壊れていると思うようになった。 iveはCラッパーを使用しようとし始めましたが、何の例もありません。 – dmnte
上記のコードを貼り付けて、Rustc 1.19でコンパイルして実行します。 – PureW
コードはコンパイルされ、私のためにも実行されますが、 "1"を使用しているコードIMではフィールドを変更しませんでしたが、dbではちょうど1ですか? – dmnte