2015-11-02 90 views
0

我是MeteorJS dev開發的一款應用程序,當我在快速庫存應用程序中收集某些項目時,這是一個問題。流星服務器在SimpleSchema autoValue選項上崩潰

以下是錯誤:

/home/operador/.meteor/packages/meteor-tool/.1.1.10.1kpywhr++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245 
        throw(ex); 
         ^
Error: Invalid definition for active field. 
at packages/aldeed_simple-schema/packages/aldeed_simple-schema.js:1328:1 
at Function._.each._.forEach (packages/underscore/underscore.js:113:1) 
at [object Object].SimpleSchema (packages/aldeed_simple-schema/packages/aldeed_simple-schema.js:1325:1) 
at collections/assets.js:16:16 
at /home/operador/fijos/.meteor/local/build/programs/server/app/collections/assets.js:64:4 
at /home/operador/fijos/.meteor/local/build/programs/server/boot.js:242:10 
at Array.forEach (native) 
at Function._.each._.forEach (/home/operador/.meteor/packages/meteor-tool/.1.1.10.1kpywhr++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/server-lib/node_modules/underscore/underscore.js:79:11) 
at /home/operador/fijos/.meteor/local/build/programs/server/boot.js:137:5 
Exited with code: 8 
Your application is crashing. Waiting for file change. 

這是assets.js

Assets = new Mongo.Collection('assets') 

Assets.allow({ 
    insert: function(userId, userLvl, doc) { 
     return !!userId; 
    } 
}); 

Brands = new SimpleSchema({ 
    name: { 
     type: String, 
     label: "Brand" 
    } 
}); 

Assetsschema = new SimpleSchema({ 
    item: { 
     type: String, 
     label: "item" 
    }, 
    year: { 
     type: Date, 
     label: "year" 
    }, 
    model: { 
     type: String, 
     label: "model" 
    }, 
    serialNumber: { 
     type: String, 
     label: "serialNumber" 
    }, 
    brand: { 
     type: [Brands] 
    }, 
    adquarance: { 
     type: Date, 
     label: "adquaranceDate" 
    }, 
    codebar: { 
     type: String, 
     label: "codebar" 
    }, 
    qrcode: { 
     type: String, 
     label: "QRcode" 
    }, 
    active: { 
     type: Boolean, 
     label: "active", 
     autoValue: true 
    } 
}); 

IDK如何解決這個問題,我試圖更改架構的名稱,但給了我有同樣的結果。

這是我的包列表:

kadira:flow-router 
kadira:blaze-layout 
erasaur:meteor-lodash 
fortawesome:fontawesome 
spiderable 
fastclick 
raix:handlebar-helpers 
aldeed:collection2 
aldeed:autoform 
accounts-ui 
accounts-password 
matb33:bootstrap-glyphicons 
zimme:active-route 
gwendall:auth-client-callbacks 
meteortoys:allthings 
datariot:ganalytics 
bootswatch:paper 
numtel:mysql 
hitchcott:qr-scanner 

回答

0

選項autoValue允許你指定一個函數。因此,您的Schema的結構應如下:

Assetsschema = new SimpleSchema({ 
    item: { 
     type: String, 
     label: "item" 
    }, 
    year: { 
     type: Date, 
     label: "year" 
    }, 
    model: { 
     type: String, 
     label: "model" 
    }, 
    serialNumber: { 
     type: String, 
     label: "serialNumber" 
    }, 
    brand: { 
     type: [Brands] 
    }, 
    adquarance: { 
     type: Date, 
     label: "adquaranceDate" 
    }, 
    codebar: { 
     type: String, 
     label: "codebar" 
    }, 
    qrcode: { 
     type: String, 
     label: "QRcode" 
    }, 
    active: { 
     type: Boolean, 
     label: "active", 
     autoValue: function() { 
      return true; 
     } 
    } 
});