这周继续为DTree项目预热,学习sails框架的搭建和结构熟悉。正好师哥在做一个nodejs的CMS框架twenty,他们用的就是sails框架。
结构
首先简单了解一下结构。在jade文件里由angularjs的控制器进行数据的传递,然后传到一个个modules里面进行操作。路由跳转则不用多说,与nodejs基本没有变化。sails的一个特点是使用waterline包把数据库操作封装起来,这样针对不同的数据库类型,调用它的统一API而不是修改代码。-
数据库操作
前面说到了数据库的交互,sails与ghost不同。ghost数据库操作通过在config.js中修改database的client进行选择,基本采用nodejs原生的数据库操作包,而sails只需选择不同的adapter即可选择针对sails的定制包。具体操作如下:以连接mongoDB为例,将.sailsrc文件中models内添加一行"connection": "mongodbServer"
。再将config文件夹中的connections.js添加一个单元。mongodbServer: {
adapter: 'sails-mongo',
host: 'localhost',
port: 27017,
// user: 'username',
// password: 'password',
// database: 'your_mongo_db_name_here'
}, 总结
这周在linux上搭建了twenty,总的来说作为一个预览版的产品(版本0.1.0),bug和不足还是很多。因此在配置上也多花了时间,不过对于了解sails框架还是起到了帮助作用的,毕竟一个活跃的例子才是好的学习对象。也预祝师哥顺利达到最好的CMS的目标。Next
接下来一周的工作就是学习具体的数据库操作相关。