2016-06-19 56 views
-1

我想這是一個愚蠢的問題,但我想這樣做如何在MongoDB模式聲明中使用「Long」類型?

var mongoose = require('mongoose'); 
 
var Long = require("long"); 
 
\t 
 
\t var UserSchema = new mongoose.Schema({ 
 
\t \t id: Long(), 
 
\t \t name: String, 
 
\t \t completed: Long(), 
 
\t \t note: String, 
 
\t \t updated_at: { type: Date, default: Date.now }, 
 
\t });

但它不工作,「不能設置爲‘低’屬性」。我知道這是因爲我沒有在「Long」構造函數中傳遞參數,但是如果我不放置「()」,它就不能工作。我有點與丟失的^^「

對不起,我的英文^^」

回答

1

您應該使用專門爲貓鼬設計了一個模塊,如mongoose-long

var mongoose = require('mongoose') 
require('mongoose-long')(mongoose); 
var Long = mongoose.Schema.Types.Long; 

var UserSchema = new mongoose.Schema({ 
    id   : Long, 
    name  : String, 
    completed : Long, 
    note  : String, 
    updated_at : { type: Date, default: Date.now }, 
}); 
+0

它的工作,謝謝:) – Coloniseur

+0

順便說一句,我正在與一個學校項目的節點,我必須做「後」和「評論」實體之間的鏈接,你認爲我必須聲明一個「ID」字段,像我在我的例子中還是隻是一個「foreignId」? ^^' – Coloniseur

+0

MongoDB中的所有文檔都會自動獲得分配給它們的唯一'_id'屬性,您可以使用它。更多關於如何使用Mongoose的信息可以在這裏找到(http://mongoosejs.com/docs/populate.html)。 – robertklep

相關問題