码迷,mamicode.com
首页 > Web开发 > 详细

Node.js与Sails~Model和ORM的持久化

时间:2015-10-15 12:39:44      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:

回到目录

上一讲说了在sails里定义model及相关参数的说明,这一讲主要说一下如何将你的Model持久化到文件,关系数据库和Nosql数据库里,在持久化这点上,sails是统一管理的,这是优势,也是劣势;优势就是入口统一,用哪种介质持久化,一个设置就OK了;劣势也很明显,就是在一个sails项目里,只能存在一种持久化的方法,你想让mysql和mongodb并存,那是不行的,呵呵!

对于数据的持久化主要分为以下几个步骤,下面一一讲解

1 安装缺失的驱动,默认来说mongodb和sqlserver都需要进行安装,npm install 命令

技术分享

在命令提示窗口输入下面命令进行安装

npm install sails-mongodb
npm install sails-sqlserver

2 添加数据库连接信息/config/connection.js,下面以mongodb和sqlserver为例

someMongodbServer: {
        adapter: ‘sails-mongo‘,
        host: ‘192.168.2.21‘,
        port: 27017,
        // user: ‘username‘,
        // password: ‘password‘,
        database: ‘TestNodeJs‘
    },  
 someSqlServer: {
        adapter: ‘sails-sqlserver‘,
        host: ‘192.168.2.71‘,
        user: ‘sa‘,
        password: ‘zzl123‘,
        database: ‘TestNodeJs‘
    }

3 设置model所使用哪种数据库进行持久化/config/model.js

module.exports.models = {

  /***************************************************************************
  *                                                                          *
  * Your app‘s default connection. i.e. the name of one of your app‘s        *
  * connections (see `config/connections.js`)                                *
  *                                                                          *
  ***************************************************************************/
 //connection: ‘localDiskDb‘,
connection: ‘someSqlServer‘,
// connection: ‘someMongodbServer‘,
  /***************************************************************************
  *                                                                          *
  * How and whether Sails will attempt to automatically rebuild the          *
  * tables/collections/etc. in your schema.                                  *
  *                                                                          *
  * See http://sailsjs.org/#!/documentation/concepts/ORM/model-settings.html  *
  *                                                                          *
  ***************************************************************************/
  migrate: ‘alter‘//自动合并,不清除原来的数据
};

下面对migrate进行一些说明:

  1. safe - never auto-migrate my database(s). I will do it myself (by hand)[不自动合并数据,需要手动控制]
  2. alter - auto-migrate, but attempt to keep my existing data (experimental)[与老数据自动合并,当添加新字段后,数据表才会被删除,推荐使用]
  3. drop - wipe/drop ALL my data and rebuild models every time I lift Sails[删除数据表,建立新表,插入新数据]

通过上面的设置之后,运行你的app.js,如果没有出现错误,说明你的数据就可以持久化了,呵呵!

小知识:

Mongodb它对自动创建数据库和数据表

Sqlserver它需要手动选建立数据库,数据表自动建立

回到目录

Node.js与Sails~Model和ORM的持久化

标签:

原文地址:http://www.cnblogs.com/lori/p/4881826.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!