sails.js 开发经验
sails.js 填坑指南
重庆-传说
C#,JAVA,Python,PHP,Node.js,Sails.js,ExtJS,EasyUI,AngularJS,VueJS
展开
-
Sails.js 核心概念
目录静态资源禁用Grunt默认任务任务自动化设计图行为路由配置local.js文件使用`.sailsrc`文件控制器生成控制器路由控制器自定义响应添加自定义响应默认响应部署FAQ 常见问题翻译 2016-07-02 17:32:10 · 4647 阅读 · 0 评论 -
sails.js使用mysql模块搞定事务
坦白说sails-mysql对事务的支持差强人意,用mysql模块自带的方法会更简单一点(也许是我打开的方式不对)。 以下是源码,你能看懂就行var mysql = require('mysql');//创建连接var connection = mysql.createConnection(this.sails.config.connections.myApp);connection.con原创 2017-09-20 15:10:25 · 1375 阅读 · 0 评论 -
sails-mongo 使用 groupBy 进行分组遇到的坑
博主在实现分组统计功能时又遇到坑,参见我以前写的博客sails-mysql 使用 groupBy 进行分组遇到的坑今天我们来谈谈mongodb的分组功能,需要注意的地方同上,groupBy 要与 sum, average, min, max 成对出现,这里不再多说。这次遇到的需求比较复杂,涉及到分组、排序、分页、对比排名。首先要分组,然后排序,然后分页,最后对比排名。先放代码,看博主是怎么征服这些需原创 2017-09-13 18:01:52 · 1073 阅读 · 0 评论 -
sails.js + nginx + https加密 + 反向代理
环境安装指南,如安装可跳过这段1、yum install -y nodejs2、npm install -g cnpm --registry=https://registry.npm.taobao.org3、cnpm install -g sails4、yum -y install gcc automake autoconf libtool make5、yum install gcc gcc原创 2017-07-26 09:23:01 · 1422 阅读 · 0 评论 -
sails-mysql 使用 groupBy 进行分组遇到的坑
示例代码Model.find({ groupBy: 'name'}).exec(function (err, data) { console.log(data);});直接抛出错误:Error (E_UNKNOWN) :: Encountered an unexpected errorAdapterError: Cannot groupBy without a calcul原创 2016-08-30 17:00:44 · 1883 阅读 · 0 评论 -
sails-sockets-sample 消息推送
参照官方文档,实现消息推送功能。 由于官方文档写得比较片段,例子不完整,整体理解起来有点复杂,其实弄懂原理后,真的非常简单。 首先要明白的是实现消息推送分前端和后台,前端订阅,后台广播,就这样简单。后台代码:if (!req.isSocket) {return res.badRequest();}var msg = "这是测试消息^_^"+Math.random();sails.socket原创 2016-10-23 13:35:28 · 1361 阅读 · 0 评论 -
让我们来谈谈 sailsJS 的 One-to-Many
User 对应多个 Car , 对应多个 BankCard,对应多个 XXX,应该怎样建模? 很遗憾,官方文档并没有解释得那么详细,所以我们要自己去验证一下。 首先,创建模型// myApp/api/models/User.jsmodule.exports = { attributes: { firstName: { type: 'string' }, l原创 2016-12-05 11:02:53 · 1467 阅读 · 0 评论 -
让我们来谈谈 sailsJS 的 Many-to-Many
参照官网例子,建好相应的模型我在测试的时候,使用的MySQL数据库,需要安装sails-mysql模块// myApp/config/models.jsmigrate: 'alter' //根据模型自动创建数据库// myApp/api/models/User.jsmodule.exports = { attributes: { firstName: {原创 2018-01-04 16:45:44 · 530 阅读 · 0 评论 -
sails.js 存放 Session 到 MySql @望云海
第一步:安装 express-mysql-sessioncnpm install express-mysql-session --save --save-exact第二步:配置 根目录/config/session.jsadapter: 'express-mysql-session',host: 'localhost',port: 3306,user: 'root',password: '原创 2017-04-04 11:10:28 · 1607 阅读 · 0 评论 -
sails.js 开启守护进程
官网推荐 forever、pm2,大家可以根据个人喜好选择。使用 forevercnpm install -g forever 安装守护进程forever start app.js --prod 开启守护进程forever list 显示运行的服务forever restartall 重启服务(建议用这个)forever stopall 停止使用 pm2cnpm in原创 2017-04-06 10:04:01 · 1330 阅读 · 3 评论 -
sails.js使用mysql-queries执行批量SQL
安装npm install mysql-queries --save使用var sqlclient = require('mysql-queries');//根据实际情况获取配置项var options = this.sails.config.connections.localDiskDb;sqlclient.init(options);var sqls = ["DROP TABLE IF原创 2017-05-31 10:25:54 · 1146 阅读 · 0 评论 -
sails.js 禁用Grunt,减少CPU开销
方法一:删除或重命名 Gruntfile.js 方法二:配置.sailsrc{ "hooks": { "grunt": false }, "paths": { "public": "assets" }}注意,一定要在.sailsrc配置这个,不然访问静态资源assets时返回404"paths": { "public":原创 2017-06-14 10:52:54 · 1154 阅读 · 0 评论 -
sails.js populate的应用
populate顾名思义是填充的意思,比较适合一对多的模型。 根据官网例子User.find({ name:'李逍遥'}).populate('剑', { //这里填充剑属性,查找李逍遥和他使用的剑 //注意这里的条件,只过滤子级对象,不影响父级 //最容易误解的地方,父级数量不受影响 where: { color: '金色' }, limit: 3, s原创 2017-06-23 16:37:44 · 1524 阅读 · 2 评论 -
sails.js 使用node-cron模块,监听订单状态并发送消息到企业微信
设计思路: 1、创建任务时分配一个请求令牌 2、执行任务时,发送令牌进行验证,并更新令牌(令牌用一次就失效) 3、验证通过后,查询订单状态,根据订单属性,发送相应的消息到企业微信cron模块地址 https://github.com/ncb000gt/node-cron创建任务var CronJob = require('cron').CronJob;var jobn原创 2017-06-28 10:27:06 · 1509 阅读 · 0 评论