評估 MongoDB 欄位值中的 JavaScript 運算式
在 MongoDB 中,可以根據 JavaScript 運算式的評估動態分配欄位值。但是,簡單地插入 JavaScript 物件作為欄位值不會導致表達式被計算。
伺服器端程式碼執行
MongoDB 提供了一種儲存機制並在伺服器端執行 JavaScript 函數。特殊的集合system.js儲存了這些函數。若要存取此集合並執行函數,可以使用 mgo.Database 類型的 Run() 方法。 Run() 方法採用 eval 指令和要執行的 JavaScript 程式碼作為參數。
例如,要使用mgo 驅動程式從Go 呼叫名為myStoredFunction() 的儲存函數,您可以使用下列指令code:
範例
假設你要設定將lastSeen 欄位變更為目前伺服器時間。您可以在system.js 中建立一個名為getCurrentTime() 的儲存JavaScript 函數:
然後,在插入語句中,您可以如下引用儲存的函數:
透過在LastSeen 欄位值中使用$eval,MongoDB 將計算指定的JavaScript 運算式並將結果儲存為欄位值。
以上是如何評估 JavaScript 表達式以動態分配 MongoDB 中的欄位值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!