首页 > 代码库 > Sails Js 升级改版
Sails Js 升级改版
之前的教程都是基于0.9.x的 官方更新到 0.10.x后 环境配置改动比较大
简单的特性说一下
1
Sails命令有更新 但是老的命令依然支持
可以自行建立自定义sails命令
2
api模组 组件注入可以自定义
3
修改了部分的0.9.x的bug 和 插件bug
4
自动路由功能更加智能
(PS:不过我本人还是喜欢手写数据库代码)
5
关于sails socket的升级
现在不仅支持model方式的发布/订阅 还支持sails对象的全局发布订阅
6
自带的一些报错信息更完善啦
500 404 400 等等,
可以在建立项目的时候直接去看看这些文件
7
CURD 清单
.findOneBy
<attribute>
In().findOneBy
<attribute>
Like().findBy
<attribute>
In().findBy
<attribute>
Like().countBy
<attribute>
In().countBy
<attribute>
Like().
<attribute>
Contains()
.findAll()
.findOneLike()
.findLike()
.contains()
.join()
.select()
.findOrCreateEach()
.join()
.startsWith()
.endsWith()
其它:
a
不同model中可配置不同的数据库连接,更方便多数据库的支持
比如登录用到的User表,可以放在Redis中,可让用户登录速度更快
业务明细可以放到MongoDB里面更快的查询
其它关系逻辑数据可以放到mysql 等RDS型库里面
使用之前要在connections文件里面预设好
不过本人使用sails-redis的时候还发现了一点小bug,不过已被我fixed了
有碰到关于redis疑问的可以直接发帖求解
b
用於跨域项目的socket io js 需要手动修改框架内的 socket.io 文件 否则会发生域名报错的情况
assets的socket io 外面多了一层 dependencies 文件夹
如果是老项目升级上来的 注意跨域产品的socket io js路径问题
c
初始化执行部分函数:
在这种情况下,model对象可能会报错不存在,可以通过手动setTimeout() 方法来规避
当然涉及到的一些controller方法对其对象也要做一边存在校验
(PS:最不爽的就是这点了.目前还没有更好的解决方案,我想应该通过0.10.x特性2的方式来处理吧,搞定后会跟帖发布处理方法)
d
数据库配置全部迁移到connections.js这个文件,方便多model多数据库调用
Sails Js 升级改版