AngularJs Module init中使用sequelize创建数据库表
来源:互联网 发布:知乎 原谅我红尘颠倒 编辑:程序博客网 时间:2024/06/08 10:18
一、 问题:sequelize 自动创建数据库表?
二、 分析:在Module init function里面,借助sequelize工具实现创建自己的表 ,
1.首先,需要在server/models/LZM.server.model.js 中 创建表模型;如下所示:
'use strict';module.exports = function (sequelize, DataTypes) { var lzm = sequelize.define('LZM', { id: { type: DataTypes.INTEGER, autoIncrement: true, primaryKey: true, allowNull: false }, title: { type: DataTypes.STRING, defaultValue: '', comment: '李' }, content: { type: DataTypes.TEXT, comment: '张' }, user_id: { type: DataTypes.INTEGER, comment: 'foreignKey user(id)' } }, { comment: 'analysi table', indexes: [ { //在外键上建立索引-蒙 fields: ['user_id'] } ], classMethods: { associate: function (models) { this.belongsTo(models.User, {foreignKey: 'user_id'}); } } } ); return lzm;};2.
modules/example/server/config/example.server.config.js
'use strict';/** * Module dependencies */var path = require('path'), config = require(path.resolve('./config/config')), logger = require(path.resolve('./config/lib/logger')), chalk = require('chalk');/** * Module init function. */module.exports = function (app, sequelize) { //创建自己的表 var LZM = sequelize.model('LZM'); LZM.sync({ force: true, loging: true }) .then(function () { logger.info(chalk.green('Database table LZM synchronized OK!')); }).catch(function (err) { logger.error('Database table LZM synchronized error: ', err); throw err; });};
3.测试插入数据 server/controller/lzm.server.controller.jsexports.listLzmCases = function (req, res) { var LZM = sequelize.model('LZM'); LZM.build({'title': '123'}).save()};.catch(function (err) { logger.error('LZM list error:', err); return res.status(422).send(err); });/** * 原始查询 详情,处理完成的内容 * 暂未启用 */exports.dispatchByIDforwardcases = function (req, res, next, id) { var create_user = req.user.id; var LZM= sequelize.model('LZM'); var ZXF= sequelize.model('ZXF'); sequelize.query('select j.rec_id,j.act_content,t.* ' + ' from j_rec_act j left join LZM t on (j.rec_id=t.id)' + ' where j.act_userid = ' + create_user + ' and j.rec_id = ' + id + ' and j.OLD_STATE_ID=6 and j.NEW_STATE_ID=7', {type: sequelize.QueryTypes.SELECT}) .then(function (torecInfo) { return res.jsonp(torecInfo); }).catch(function (err) { logger.error('Torec list error:', err); return res.status(422).send(err); });};
阅读全文
0 0
- AngularJs Module init中使用sequelize创建数据库表
- node.js-ORM数据库框架sequelize使用总结 超时查询、缓存查询、多表关联查询
- sequelize的使用
- angularJs中ng-if,ng-show,ng-disabled,ng-init使用案例
- angularjs--module
- sequelize解决模型不是sequelize创建的实例
- 使用 IDEA 在一个 Project 中创建多个 module
- init rc中创建文件
- 1.sequelize中Models-Defination
- node.js项目中基于mysql利用sequelize-auto对照数据库自动生成相应的models
- Flex Builder中创建Module
- MP 新版本 [2 mysql sequelize 搭建数据库]
- nodejs+sequelize同步模型到mysql数据库
- Symfony2中使用AngularJS
- angularjs中使用jquery
- Angularjs中checkbox使用
- AngularJS中使用$resource
- AngularJS中使用ngTable
- 基于MacOSX平台下的二维码扫码功能
- 获取List<Map>中的Key值,返回List<String>
- hdu2101 A + B Problem Too(C语言)
- POJ 1321 棋盘问题
- [RK3288][Android6.0] 设置中通过Sensor旋转显示画面小结
- AngularJs Module init中使用sequelize创建数据库表
- 小技巧:虚线分割线
- 让人疑惑的Java代码
- LOJ 6001 太空飞行计划 (最大权闭合图+打印最小割)
- Qt中QThread线程与主线程的数据传送以及lineEdit的显示
- am命令基本知识
- ==和equals的区别
- TensorFlow实战:Chapter-5(CNN-3-经典卷积神经网络(GoogleNet))
- 执行Class.forName 报错 com.mysql.jdbc.Driverjava.lang.NullPointerException