MongoDB での JavaScript の評価によるフィールド値の割り当て
MongoDB コレクションへのドキュメントの挿入を JavaScript の評価で強化して、フィールド値を動的に割り当てることができます。ただし、最初に指定されたコードは JavaScript ステートメントの評価に失敗し、代わりにスクリプトとして保存されます。
MongoDB ドキュメントでは、JavaScript 関数をサーバー側で system.js コレクションに保存する方法の概要が説明されています。ストアド関数を作成することで、Go クライアントから JavaScript をリモートで評価できます。
ストアド関数を使用する方法:
db.system.js.insert({ _id: "assignDate", value: function() { return ISODate(); } });
func createInstance(c *mgo.Collection) { result, err := c.Run( bson.M{"eval": "assignDate()"}, ) checkError(err, "Could not get server time") var doc bson.M err = result.One(&doc) if err != nil { checkError(err, "Invalid result from stored function", 3) } lastSeen, ok := doc["retval"].(time.Time) if !ok { checkError(fmtErrorf("Invalid result from stored function: %v", doc["retval"]), "Invalid result from stored function: %v", 3) } // ... Insert document with evaluated field value }
考慮事項:
以上がMongoDB のストアド JavaScript 関数を使用してフィールド値を動的に割り当てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。