Tag: 水线

Sails.js中的模型validation失败

我在Sails.js中testing了以下Employee.js模型,并发现了一些难以理解的东西。 在创build新员工的表单发布时,Employee.js模型的第一个定义中出现以下错误,但Employee.js的第二个定义正常工作。 那么Employee.js的两个定义有什么区别呢? 错误: Error (E_VALIDATION) :: 3 attributes are invalid at WLValidationError.WLError (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/error/WLError.js:33:18) at new WLValidationError (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/error/WLValidationError.js:20:28) at /usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/query/validate.js:45:43 at allValidationsChecked (/usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/validations.js:195:5) at done (/usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:135:19) at /usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:32:16 at /usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/validations.js:186:14 at done (/usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:135:19) at /usr/local/lib/node_modules/sails/node_modules/waterline/node_modules/async/lib/async.js:32:16 at /usr/local/lib/node_modules/sails/node_modules/waterline/lib/waterline/core/validations.js:157:64 Invalid attributes sent to Employee: • name • `undefined` should be a string (instead of "null", which is […]

如何在sails中使用像'array'和'json'这样的属性types

风帆支持Waterline的非常方便的模型,我用存储多个string的方式使用'array'属性types,但现在我想存储更复杂的对象,虽然我可以通过'数组'types存储原始数据,我不知道是否安全,我想定义数组中的对象types,如mongoose的风格。 例如,我需要一个“产品”模型,我想将其定义为一个“数组”,但存储在数组中的对象只是模型“书”,我可以这样做,但我不认为它的作品。 module.exports = { products : { type : 'array', Book : { name : 'string', price : 'integer' } } } 所以,有关使用“数组”和“json”的build议非常感谢,非常感谢!

在web服务器之外使用模型来启动js

我想创build一个cli来创buildpipe理员用户我有在api / models / User.js中的用户模型设置 并在cli上 var User, program; program = require("commander"); User = require("../api/models/User"); program.version("0.0.1"); program.command("create_user").description("Create a user into database").action(function() { return console.log(User); }); program.parse(process.argv); 用户日志是: User = { attributes: { username: "string", password: "string", } }; 并没有可用的水线方法。

通过(sails js)水线将值推入MongoDB数据库数组中

节点js,风帆js,水线。 我需要在插入后将值更新(或推送)到下面的模式中 我正在使用waterline和mongodb的sailsjs。 { "countries": { "states": [ { "statename": "state", "districts": [ { "distname": "district", "cities": [ { "cityname": "Hyderabad", "places": [ { "placename": "hitechcity" } ] } ] } ] } ] } } 我需要知道如何更新它,我需要更新后这样的事情 { "countries": { "states": [ { "statename": "state", "districts": [ { "distname": "district", "cities": [ { "cityname": "Hyderabad", […]

如何在SailsJs中使用Sequelize

水线是一个很好的ORM,但我注意到有许多function还没有出现在水线上,但Sequelize已经有了。 所以我决定改用sequelize,但仍然使用Sails来处理其他的事情。 我有search教程如何切换到sequelize,但没有。 我怎样才能取代水线为航行Js的续集?

在Node.js / Waterline中指定返回的字段?

我想提出一个请求: User.find().exec(function(){}); 我知道我可以在模型中使用toJSON ,但是我不喜欢这种方法,因为有时我需要不同的参数。 例如,如果它是login用户,我将返回他们的电子邮件和其他参数。 但是,如果对同一数据的请求由不同的用户进行,则不包括电子邮件和更小的参数子集。 我也试过使用: User.find({}, {username:1}) … User.find({}, {fields: {username:1}}); 但没有任何运气。 我怎样才能指定我需要返回的字段?

如何使用Waterline和MongoDB执行“$ in”查询

我正在尝试做一个“$ in”与水线查询我有一个数组,我想要获得列表中的文件与数组中的ID。 我不知道该怎么做。 我试过了: User.find() .where({id : {in : array}}) done(…) 但似乎并不像预期的那样工作。 任何方式,我可以做到这一点?

如何在SailsJS / Waterline中使用Model.query()和promise?

我遇到了Sails.JS 0.9.8的问题。 我想使用Model.query()函数(我使用sails-mysql适配器)承诺。 此代码将工作: User.findOne({ email: email }) .then(function(user) { console.log(user); }); 但是这个不会 User.query("SELECT email FROM user WHERE email = ?", [ email ])) .then(function(err, rows) { console.log(rows); }) 我得到了'err'和'rows'的undefined。 它只是没有实施,或者我做错了什么? 如果没有实现,是否有任何替代使用.query()承诺? 先谢谢你

我如何添加一个实例方法到sails.js中的所有模型?

我想为所有将使用元数据的模型添加一个默认的显示函数,与属性/关联定义不同,对实例的属性/关联进行操作,使其适合显示在UI中。 例如: Foo.findOne(someId) .exec(function(err, foo) { … res.view({ foo: foo.toDisplay(), }); }); 所以,我想添加这个function,所有的模型。 我可以想象一个 Model.prototype.toDisplay = … 解决scheme,但我不知道从哪里获得模型(需要长时间('waterline /…./ model')path),如果我有模型,在哪里放置这个剪辑。 请指教。

如何用sails.js定义模型的实例方法

我如何定义Sails中的对象的函数/实例方法? 在Waterline doc( https://github.com/balderdashy/waterline )中他们说: var User = Waterline.Collection.extend({ … attributes: { … // You can also define instance methods here fullName: function() { return this.firstName + ' ' + this.lastName } }, } 但是当我尝试在Sails中的模型的属性中定义一个实例方法时,该函数不会被添加到对象中。 难道我做错了什么 ? 环境:Sails(v0.8.94),Node(v0.8.16)