Articles of sequelize.js

将JSON文件用作具有Sequelize的数据库

我想使用sequalize,但不是与sqlite,postgres等。 我想把我的数据在JSON文件是可能的? 还是有任何库像sequelize,我可以使用json文件作为数据库?

join连接和关系

我有一个数据库运行,但我还没有能够执行两个表之间的联接。 我已经做了另外两个表之间的连接,但是这个不起作用。 在我的db.js文件上,我build立了以下表之间的关系: db.diet.hasMany(db.meal, {as : 'Diet', foreignKey : 'dietId'}); 而在我的server.js文件,我试图build立这个查询: db.meal.findAll({ include : [db.diet], where : { dietId : idDiet } }).then(function (meals) { res.json(meals) }); 这给了我以下错误: ReferenceError: idDiet is not defined 我也尝试查询这样的饮食表: db.diet.findAll({ include :[db.meal], where : { idDiet : dietId } }).then(function (meals) { res.json(meals); }); 但是这也给我一个错误: ReferenceError: dietId is not defined […]

Sequelizevalidation不工作保存()

我有一个像这样的validationsequelize模型: validate: { isEmail: {msg: 'This field must be an E-Mail!'} } 当我使用.create()方法时它工作,但当我使用.update() / .save()方法时不工作。 我做了什么错事? 提前致谢。

Sinon嘲笑Sequelize

我有以下使用Sequelize的nodejs函数: var processDatabase = function (dbConnection, schema, recordsets) { var myLogTable = dbConnection.define(schema.tableName, schema.myLogSchema, schema.myLogSchemaIndex); myLogTable.sync({ force: false, freezeTableName: true, logging: console.log }).then(function () { console.log('Table synced…'); for (k = 0; k < recordsets.length; k++) { var query = "Some query"; dbConnection.query( query, { type: dbConnection.QueryTypes.SELECT } ) .then(function (results) { console.log('MYSQL Selection Done'); }) […]

sequelize(SQL)等待直到数组已被更新

我有我需要更新的对象列表 router.route('/api2/user/bulk') .put(function (req, res) { if(req.body.users && req.body.fieldKey) { req.body.users.forEach(function (x) { var updateVariable = {}; updateVariable[req.body.fieldKey] = _.get(x, req.body.fieldKey); model.user.update(updateVariable, {where: {id: x.id}}); }) } }); 现在的问题是节点在循环完成之前继续执行。 这意味着我不能确定,如果我在最后添加一个res.status(200).send('ok') ,那么所有更新都会被更新。 我的问题是我如何确保更新已经通过之前,我发送回应给我的客户?

NodeJS / Sequelize / MySQL – 为什么需要postgres依赖关系?

我是Node和Sequelize的新手,我正在build立与MySQL数据库的连接。 我想知道为什么Postgres依赖关系是需要的,即使将方言设置为mysql。 如能帮助我指出问题,我将不胜感激。 来自packages.json "dependencies": { // … "mysql2": "1.1.2", "sequelize": "3.27.0" }, 我试图连接数据库的方式: var Sequelize = require('sequelize'); var sequelize = new Sequelize('dbName', 'dbUser', 'dbPass', { host: 'localhost', dialect: 'mysql' }); sequelize.authenticate() .then(function(err) { console.log('Connection has been established successfully.'); }) .catch(function (err) { console.log('Unable to connect to the database:', err); }); 我正面临的错误: Failed to compile. […]

如何连接节点Sequelize到亚马逊RDS MySQL与多可用区

我正在使用带有多可用区技术支持的Amazon RDS托pipeMySQL。 只是找不到任何关于如何将Sequelize连接到Amazon RDS的信息,以便Sequelize能够相应地处理故障转移等。 我只是使用下面的configuration,但现在不要,如果这是足够的或build议? sequelizeConfig = { logging: false, pool: { maxConnections: 5, maxIdleTime: 30}, sequelizeConfig[dialectOptions] = { ssl: 'Amazon RDS' } } 使用Amazon RDS和多可用区域我认为以下几点很重要: 如果连接丢失,请尝试重新连接,直到再次可用 不要cachingmysql服务器的IP地址太长(亚马逊build议不到1分钟) 亚马逊文档并没有写任何关于连接处理和池的信息。

当我们使用join方法时,通过id为root表顺序sorting

这下面的Sequelize工作罚款我没有使用order ,我想知道为什么我不能使用作为posts模式的根表的order ? 当我使用下面的代码,我得到这个错误: Unhandled rejection Error: 'posts' in order / group clause is not valid association 但在channelVideoContainer等其他模型上工作正常 models.posts.findAll({ where: { channelId: 1 }, include: [ { model: models.channelVideoContainer, include: [models.fileServerSetting] }, { model: models.channelMusicContainer, include: [models.fileServerSetting] }, { model: models.channelImageWithTextContainer, include: [models.fileServerSetting] }, { model: models.channelFilesContainer, include: [models.fileServerSetting] }, models.channelPlainTextContainer ], order: [ [{model: […]

数据库中不存在行时,Sequelize总是超时

我有一个获得与nodejs服务器上的sequelize用户: router.get('/:id', function (req, res) { models.user.find({ where: { id: req.params.id } }).then(function (result) { if (result === null) { res.status(204); } else { res.status(200); res.json(result); } }); }); 当用户存在于数据库中时,完美工作,但是当我使用一个不存在的id这个获得超时,就像我使用的每一个其他的发现。 有人可以告诉我我做错了什么?

续集连接和日志logging问题

我正在尝试使用Sequelize与SQL Server 2012数据库连接。 当我的连接string明显错误时,我看到ECONN REFUSED消息和超时。 现在,我没有得到任何回应,尽pipelogin成功和失败,根据此代码: import * as Sequelize from 'sequelize'; — connection string redacted let seqConn = new Sequelize("mssql://**;Initial Catalog=**;Persist Security Info=True;Integrated Security=SSPI; User ID=**; Password=**") seqConn .authenticate() .then(function(err) { console.log('Connection has been established successfully.'); }) .catch(function (err) { console.log('Unable to connect to the database:', err); }); 我以前使用的语法: let seqConn = new Sequelize("DB", […]