Articles of sails.js waterline sails

通过水线将新文档添加到字段typesJson中

我想添加一个新的文档,或者你可以说一个新的键值对现有的JSONtypes字段,但它是取代旧的键值对,例如在我的embedded字段是{"@type":"d","key1":"example1"} ,当我执行更新调用 WL_MODELS.numbers.update({id: req.body.SID},{numbers: {"key2":"example2"}},function(err,model){ if(err) console.log(err); else { console.log(model);}} ); 它取代了numbers: {"@type":"d","key2":"example2"}的值numbers: {"@type":"d","key2":"example2"}但是我想在现有的embedded式或json文档中添加新的键值对,如果我的方法是错误的,我怎样才能做到这一点使用waterline和sails-orientdb?

有什么方法来覆盖特定types的默认格式和validation?

我有一个types为“date”的“生日”字段的模型用户。 问题在于水线将其值转换成限制在1970年以下的JavaScript Date对象。显然有一些出生年份less于1970年的人。 那么是否有一些方法可以完全重写为特定字段进行格式化和validation的函数? 也许我可以做到这一点,而不会破坏任何适配器的兼容性?

即使关联为空,关联填充也会返回结果

我正在努力解决与Sails.js和水线协会有关的问题。 数据库技术是mongoDB ,我正在使用sails -mongo适配器。 我有一个与angular色模型有关联的模型用户。 该协会是一对多的types。 该协会宣布如下: /** ————————- * User.js * ————————— */ {…} role: { model: 'Role' }, {…} /** ————————- * Role.js * ————————— */ {…} users: { collection: 'Role', via: 'role' }, {…} 当我查询所有的用户,并填充angular色属性,我有插入数据库的第一个angular色填充的angular色属性,即使是没有任何关联的angular色的用户。 任何人都遇到过这个问题? 非常感谢。

如何关联两个不同的sailsJs项目的模型?

我有一个sailsJs项目,pipe理不同types的用户login,即用户types1,用户types2等。我有另一个sailsJs项目pipe理这些用户提供的服务,所以我需要将用户types模型与他们提供的服务相关联。 达到这个目标的最好方法是什么? 基本上,如果以某种方式,我得到了在其他项目中的所有用户模型的参考,这可以实现。 我读了可安装的钩子,但我不知道如何使用它,并没有很好的教程可用来使用相同的。 请指导我如何实现这一目标。 提前致谢。

Sails.js:嵌套的MongoDB查询

我正在使用Sails v0.11,并且正在开发一个独立的导入脚本,以便将数据导入到mongoDB中 – 现在是非工作部分 – build立模型之间的关联。 对于这个过程,我在模型中引入了临时助手属性,以便查找关联的logging,并用真实的MongoDB _idsreplace它们。 该脚本启动Sails以便能够使用其function(水线等): var app = Sails(); app.load({ hooks: { grunt: false }, log: { level: 'warn' } }, function sailsReady(err){ processUsers()查找所有用户及其_ids并遍历它们以调用第二个函数addOrgsToOneUser() var processUsers = function() { // Iterate through all users in order to retrieve their _ids and app.models['user'].native(function(err, collection) { collection.find({}, projectionOrgInUser).toArray(function (err, users) { Async.eachSeries(users, function […]

在风帆js联合search

我有游戏集合: { "name": "Play RoadRash", "version": "1.0.0", "icon": "image-md-two-thirds.png", "id": "6dc41c3fa0e7" } 和平台集合: { "name": "PlayStation", "version": "7", "icon": "playstation.jpg", "id": "55eaf322f1a16" } 我正在尝试创build一个search查询谁search这两个集合中的名称参数。 有没有人有任何想法如何search在航行水线多个集合?

SailsJS:如果它有未声明的属性,则阻止Model.create()

如果包含未在api / models / YourModel中声明的属性,是否有阻止实体创build的方法? 例如,假设我使用了MongoDB,并且有这个User模型: module.exports = { attributes: { name:{type:'string'}, age:{type:'number'} } }; 我试图用这个代码创build: User.create({name:'Walter Jr',age:8,missingTest:'something'}).exec(function createCB(err,created){ console.log('should fail'); }); 另外,如果一个关系/关联到另一个模型,不应该创build失败,如果实体ID指向一个无效的实体? 也许我在validation过程中遗漏了一些东西,但到目前为止,这种行为对我来说似乎有点奇怪,如果水线有复合主键支持,那也不错。

在集合/对象中查找 – SailsJS和Waterline ORM

我使用SailsJS,所以Waterline ORM和MongoDB。 我将多个用户ID保存在一个名为Labels的集合中的一个对象中(这样一个标签可以属于多个用户)。 我在Mongo中有一个数据结构,像这样: labels: { id: … belongs_to: { **id of user**: 2 (I'm using this is for individual user ordering) } } 如果我目前是ID为101的用户 – 我想查找()label.belongs_to中存在101的所有标签条目。 我search了文档,但无法find如何做到这一点。 我试过(没有运气)类似于: Label.find().where({ belongs_to: {'contains' : user_id}) 这是解决这个问题的最好方法吗?如果是的话,我怎样才能通过Sails实现呢?

SailsJS / Waterline不能在Postgres中创build模型

我试图将我的Sails JS应用程序部署到标准的Ubuntu 14.04.3 VM上。 现在,我无法连接我的SailsJS实例与PostgreSQL服务器实例。 SailsJS服务器和PostgreSQL服务器都运行在同一个VM中。 我从我的Sails JS日志得到以下输出: MySailsServer-0 Sending 500 ("Server Error") response: Error (E_UNKNOWN) :: Encountered an unexpected error error: relation "recording" does not exist at Connection.parseE (/home/vmuser/MySailsServer/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:539:11) at Connection.parseMessage (/home/vmuser/MySailsServer/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:366:17) at Socket.<anonymous> (/home/vmuser/MySailsServer/node_modules/sails-postgresql/node_modules/pg/lib/connection.js:105:22) at emitOne (events.js:77:13) at Socket.emit (events.js:169:7) at readableAddChunk (_stream_readable.js:146:16) at Socket.Readable.push (_stream_readable.js:110:10) at TCP.onread (net.js:523:20) 看起来好像我的Recording模型没有在数据库中创build。 我检查了Postgre日志以获取更多信息。 以下是cat /var/log/postgresql/postgresql-9.3-main.log的输出: […]

水线(Sails.js):AND条件

我正在使用mongodb和sails.js查询包含torrent文件标题的模型。 但是我无法使用“AND”条件执行水线查询。 我已经用几种方法尝试过了,但是大部分都是空的或简单的,永远不会返回。 例如数据库包含一个条目: "title": "300 Rise Of An Empire 2014 720p BluRay x264-BLOW [Subs Spanish Latino] mkv" 逐行添加每个查询参数时: var query = Hash.find(); query = query.where({ "title": { "contains": "spanish" } }); query = query.where({ "title": { "contains": "2014" } }); query = query.where({"or": [ { "title": { "contains": "720p" } }, { "title": { […]