Tag: sequelize.js

使用Node'pg'库连接到Amazon Redshift

我正在尝试使用“pg”库将我的API连接到Redshift的一个实例,但出现以下错误: Possibly unhandled error: SET TIME ZONE is not supported at Connection.parseE (/Users/henrylee/WebstormProjects/project-api/node_modules/pg/lib/connection.js:534:11) 我知道Redshift不支持时区的设置,但我并不真正关心这一点。 我似乎无法find任何帮助如何克服这个问题,所以任何inout将不胜感激。 谢谢!

Nodejs – sequelize hasMany急切加载

我正在使用sequelize最新版本,只是我需要急于加载模型“VenueAddress”find“Venue”模型时,但我得到以下错误: 我感谢您的帮助。 TypeError: Cannot read property 'replace' of undefined at Object.module.exports.removeTicks (d:\GitProjects\bashed\node_modules\sequelize\lib\utils.js:595:13) at Object.module.exports.addTicks //find方法: db.Venue.find({ where: {venueId: id},include: [{model: db.VenueAddress}]}).then(function(venue){ if(!venue) { return next(new Error('Failed to load venue ' + id)); } else { req.venue = venue; return next(); } }).catch(function(err){ return next(err); }); //楷模 Venue.hasMany(models.VenueAddress, {through: models.VenueAddress,foreignKey: 'venueId'}); VenueAddress.belongsTo(models.Venue, {through: models.VenueAddress,foreignKey: 'venueId'});

添加限制sequelize findAll破坏查询?

我试图返回一组Model ,使用limit和offset分页,包括该模型的collections夹的分组计数。 一个相当微不足道的事情来尝试。 这是我的基本查询设置与sequ​​elize: var perPage = 12; var page = 1; return Model.findAll({ group: [ 'model.id', 'favorites.id' ], attributes: [ '*', [ Sequelize.fn('count', Sequelize.col('favorites.id')), 'favorites_count' ] ], include: [ { attributes: [], model: Favorite }, ], offset: perPage * page 这生成(相当)预期的查询: SELECT "model"."id", "model".*, Count("favorites"."id") AS "favorites_count", "favorites"."id" AS "favorites.id" FROM "model" AS "model" […]

为调度应用程序添加模型关联

我正在开发一个应用程序来处理大型侦察兵营的程序调度。 我关心的主要模型是: 程序代表一个单独的程序活动(例如,皮划艇,山地自行车等等。这个模型有很多领域,没有一个与这个问题相关。 var Program = sequelize.define("Program", { name: { type: DataTypes.STRING, allowNull: false }, max_participants_per_period: DataTypes.INTEGER, […bunch of other fields…] }, { underscored: true, classMethods: { associate: function(models) { Program.hasMany(models.ProgramPeriod); } } }); 每个程序都安排在一个ProgramPeriod中。 ProgramPeriod有一个开始和结束时间。 不同的节目不同的时间(有些是半天,有些是全天等)。 var ProgramPeriod = sequelize.define('ProgramPeriod', { start_at: DataTypes.DATE, end_at: DataTypes.DATE }, { underscored: true, classMethods: { associate: function(models) { […]

使用Node Webkit,Sequelize和SQLite3,保存()和get()失败

我不完全确定我的问题是什么,但标题是我最好的猜测。 包括我的错误日志和思考过程。 我希望有人能帮帮忙。 /Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/captured_trace.js:478 Unhandled rejection Error: TypeError: Illegal invocation at Object.ensureErrorObject (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/util.js:228:20) at Promise._rejectCallback (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/promise.js:416:22) at Promise._settlePromiseFromHandler (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/promise.js:460:17) at Promise._settlePromiseAt (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/promise.js:530:18) at Promise._settlePromises (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/promise.js:646:14) at Async._drainQueue (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/async.js:177:16) at Async._drainQueues (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/async.js:187:10) at Immediate.Async.drainQueues [as _onImmediate] (/Users/fjcero/project/node_modules/sequelize/node_modules/bluebird/js/main/async.js:15:14) at processImmediate [as _immediateCallback] (timers.js:321:17) 我开始使用SQLite作为单个应用程序数据存储。 我selectSequelize作为ORM,因为它非常简单。 在web上下文中,这意味着通过Node.js运行应用程序一切正常。 当我尝试在NW.js上下文中运行相同的应用程序时,问题就开始了。 首先,SQLite3应该以特定的方式进行编译。 我做到了,一切顺利。 我定义了Sequelize模型,并且在执行sync()时,如果不存在,则创build所有表,并且架构是指定的。 这意味着,在某些时候SQLite3和Sequelize连接良好,一切都如预期的那样。 当我尝试使用save()或get()方法时,奇怪的问题就开始了,因为带Promise的东西失败了。 我想这可能是由于支持NW编译的SQLite模块。 我不知道这是库故障,还是一些缺失的标志,或者NW上下文在Sequelize和SQLite通信之间打破了什么。 既然这只发生在一个NW的背景下,我select在这里问,所以我可以知道我做错了什么,或者我怎么能debugging这个东西。 任何起点都将被赞赏,无论是解决scheme,还是解释如何在Node Webkit中进行debugging。

SequelizeJS:如何在不使用原始查询的情况下在多个数据库中包含关联(join)

假设DB“A”中有“Account”表,DB“B”中有“ConversationHistory”表。 我的伪初始化脚本是: // Connection Script var db1 = new Sequelize("A", user, password) var db2 = new Sequelize("B", user, password) // Association Account.hasMany(ConversationHistory, {foreignKey: "sender_id", as: "conversations", constraints: false}) ConversationHistory.belongsTo(Account, {foreignKey: "sender_id", as: "sender", constraints: false}); // But when I use include in findMethod like ConversationHistory.findAll({ where: { … }, include: [{ model: Account, where: { […]

Sequelize Single Instance – 在Module.exports之后无效

我有这个Sequelize代码连接到我的数据库 var sequelize = new Sequelize('db-name', 'user', 'pwd', { host: 'XXX.XX.XX.XXX', dialect: 'mysql', pool: { max: 50, min: 0, idle: 1000000 }, }); 我把它包装在下面的模块中 var express = require('express'); var app = module.exports = express(); var Sequelize = require('sequelize'); module.exports = function (Sequelize, DataTypes) { return new Sequelize('db-name', 'user', 'pwd', { host: 'XXX.XX.XX.XXX', dialect: 'mysql', pool: […]

将NodeJS Express连接到MS SQL Server

我是一个NodeJS新手,我正在构build一个与MSSQL(SQL Server 2008 R2)数据库交谈的应用程序。 为此,我尝试使用Sequelize ,一个声称这样做的ORM库。 虽然我已经成功地使它与MySQL一起工作,但是SQL Server连接不起作用。 我在两种情况下连接到本地数据库。 以下是我所尝试的(如文档中所示): [第1部分:build立连接] … Express Code … var Sequelize = require('sequelize'); var sequelize = new Sequelize('NewDB', '', '', { host: '(localdb)\v11.0', dialect: 'mssql', pool: { max: 5, min: 0, idle: 10000 } }); [第2部分:testing] var User = sequelize.define('user', { firstName: { type: Sequelize.STRING, field: 'first_name' // Will […]

如何在加载时使用sequelize进行外连接

我可以find一个答案,但请指出我可能忽略的任何东西:我想知道如何在node.js中加载续集时如何进行外(全)连接? 现在工作如下: Messages.findAll({ include: [{model: User, required: true}]}) 如果我没有错,这给了我一个内部连接。 消息和使用有一对多的关系,我试图将用户名(存储在用户)传递给客户端,这期望结果数组的属性是“用户名”。 但是在这里,我只是获得一个用户对象的用户名属性附加。 有任何想法吗?

更新model.update上的错误

未处理的拒绝types错误:未定义不是函数 错误,当我试图更新我的表在MySQL上面的续集。 这里是触发错误的代码片段,评论一个令人惊讶的工作: topic.update( { name: "adfa"}, { where: { tid: 1} } ); //topicAttribute.update({ value: "name 2"},{where: {TOPIC: 2,name: "nadpis" }}); 现在这是我的两个模型: var topic = sequelize.define('topic', { tid: { type: Sequelize.INTEGER, field: 'tid', primaryKey: true }, name: { type: Sequelize.STRING, field: 'name' }, added: { type: Sequelize.DATE, field: 'added' }, addedBy: { type: Sequelize.STRING, […]