问题标签 [sails-mongo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - Sails.js 关联:一对多关联的“多”端不保存到 MongoDB 或 Postgres(与磁盘数据库相比)
这适用于sails-disk 适配器,但不适用于sails-mongo 或sails-postgresql。
我有 2 个模型,Feed 和 Event,其中 Feed 可以属于许多事件。
当我创建或保存与一个或多个事件关联的新 Feed 记录时(通过“posts”属性),“posts”属性不会被保存。但是,当我创建或保存与一个 Feed 关联的新事件时(通过“已发布”属性),“已发布”属性会正确保存。问题:我无法从 Feed 端查询 Feed 及其事件(使用 Sails .populate
),只能从 Event 端查询。
我可以确认传递给的数据Feed.create
包含“posts”属性,然后回调的响应不包含。
这是我的模型的样子:
Feed.js:
事件.js:
最后,这是我的 config/models.js 和 config/connections.js 的样子:
连接:{
node.js - NodeJs 帆模型替换现有表
大家好,下面是我的用户表模型代码...
它正在创建user
具有上述属性的表..但是在我们从后端插入一些数据到数据库表user
之后......重新启动sails / nodejs..它开始替换用户表,所以里面的所有数据user
都会丢失。 ..如何解决这个问题?这样它就不会创建相同的表,如果它已经存在......
node.js - 如何编写 Sails.js 模型,以便不会为每个新文档重新创建相关类别?
我觉得必须有一个简单的解决方案,但我似乎无法找到正确的方法来在线搜索它。我在 Node.js & Express 上使用 Sails 服务器。现在我正在尝试让一个基本的 CRUD API 工作,所以我一直在发送 post & get connection with Postman。
我从一个空数据库(托管在 Mongolab 上)开始,并尝试创建两个名称不同但类别相同的文档。之后,我希望类别集合中只有 1 个文档,主集合中只有两个文档。相反,第二个 POST 触发了错误,因为尽管有 {unique:true} 属性,它仍试图创建第二个类别文档。
我能做些什么来修复这个错误并建立正确的一对多关系?
\api\models\Beer.js:
\api\models\Company.js:
\api\models\BeerStyle.js:
\api\controllers\BeerController.js:
在 \config\routes.js 中:
两个请求:
第二次请求出错:
node.js - 如何在“创建”的sails.js/waterline 中添加一个新字段?
我的学校模型有一个名称、地址等和一个用户对象的所有者。
学校.js
创建新学校时,我会执行以下操作:
但是添加所有者的最简单方法是什么(登录后在 req.session.user 的会话中找到)?
我知道我能做到
但必须有更简单的方法。任何例子都会有很大帮助!太感谢了!
sails.js - 如何根据多对多集合过滤查询
我有两个模型对象。医生和医院。模型定义如下所示:
和
如何查询映射到特定医院的医生?我阅读了几篇关于through
关键字的帖子,但我无法将记录保存到直通/连接表中。好像如果我可以查询自动连接表,我可以让它工作,但我很好奇是否有一种“官方”的方式来完成这种类型的查询。
我当前的查询如下所示:Doctor.find().where({'hospitals': ['548303dcf49435ec4a01f2a2','548303cbf49435ec4a01f2a0']}).populate('hospitals').exec(function (err, doctors) { ... });
底层数据库是 mongo,如果这很重要的话。
javascript - Sails-mongo 在两个日期之间获得结果
我正在使用带有sails-mongo适配器的mongodb开发sails js,我的问题是我无法使用sails-mongo在两个日期之间获取结果。
那么是否有任何解决方案来检索这些数据,实际上我想获取每天条目的总数(过去 15 天)。
因此,如果您知道任何解决此问题的方法或任何替代方法,请分享。
- 谢谢 - ND
sails.js - Sails.js and native mongodb query
I'm trying to do the following in SailsJS (v0.10):
So essentially what I'm doing is copying a document from the 'development' collection into the 'published' collection, and keeping the '_id'. Having the same '_id' is important as it allows for simpler future actions where I can sort of treat the 'development' document and the 'published' document as one (so a 'delete' call would only need one '_id' value to be passed to it).
I just seem unable to get this to work, no matter what I do. I've tried using 'native()' and "require('mongodb').ObjectID" but the '_id' in the 'published' collection is always re-generated - so I end up with multiple copies of the document in the 'published' collection if I run the query several times. Each with a different '_id' and a different 'version' value. This isn't very helpful. I've even set 'autoPK' to false in my 'published' model, just in case.
I've ended up adding a value - 'developmentId' - in the document to store the original 'development._id' and used that as follows as a workaround for now:
This is the actual code I've now cobbled together in my controller:
Yes it works, but I honestly don't see why this should be necessary. I'm wondering, is there a way to perform my first choice query in SailsJS in a less cluttered way?
node.js - Sails 模型验证仅在更新时而不是在创建时验证
在使用sails 验证时,我只需要一些字段来在更新时而不是在创建期间进行验证。场景是,当用户创建时,我只是获取用户名和密码,然后我要求用户提供所有剩余的数据,并且我只需要在更新期间应用一些验证规则,而不是在创建期间应用。
我知道我可以使用生命周期回调 beforeUpdate 进行一些手动验证,但是我不会使用我认为不是正确方法的sails 验证。
如何告诉模型这些规则只需要在更新期间应用?
javascript - Sails.js - 在 url 中有一个“包含”或查询以获取适当的 JSON 数据
我的 Sails.js 应用程序有一个名为“Ideas”的模型,并使用默认的蓝图 REST api,我可以在访问时访问集合的内容:http ://example.com/ideas/find
此外,默认情况下,我还可以限制数据以获取特定标题:http ://example.com/ideas/find?title=How to Watch TV
虽然我想要做的是显示所有包含关键字“T”的标题的 JSON 数据,但是当我将上面的内容替换为
他们都没有工作
如何获取包含包含特定关键字的所有标题的 JSON 输出?
javascript - Sails.js 模型唯一属性在生产环境中不起作用
我对风帆相当陌生,并且遵循了一个简单的教程来创建一个 REST api。我创建了一个模型:
该模型包含一些独特的字段。我使用sails localDisk 和在本地运行的真正的mongo DB 在本地对此进行了测试,并且一切正常,即在尝试添加副本时它被拒绝了。
然后我部署到 heroku 并为 MongoLab 和 Redis 放入所有 heroku 配置。在测试时,我发现我可以使用我创建的索引端点查看所有条目,也可以使用创建端点创建新文档。然后我通过创建 url 向数据库添加了一个重复的条目,发现它允许它,我最终得到了大量相同的文档。
我正在使用'sails-mongo'
适配器。我需要对 prod DB 做些什么来应用规则吗?
谢谢亚历克斯