草庐IT

Sequelize

全部标签

javascript - 从 Sequelize findAll 中选择一条随机记录

我目前正在暴力破解这个,但我相信有一个更好的解决方案使用Sequelize,有问题的代码(使用postgres):...then((tile_data)=>{returnEncounter.findAll({where:{level:tile_data.dataValues.level},transaction:transaction_data}).then((encounter_data)=>{letencounter=encounter_data[Math.floor((Math.random()*encounter_data.length))].dataValuesreturnB

javascript - Sequelize 迁移失败(postgres)

我正在尝试使用sequelize将postgresql与我的Node应用程序一起使用。但我无法让它发挥作用。当我运行sequelize-m时,我得到了这个输出:Loadedconfigurationfile"config/config.json".Usingenvironment"development".Runningmigrations...20130916100313-create-table-usuarios.jsCompletedin21msevents.js:74throwTypeError('Uncaught,unspecified"error"event.');^Typ

javascript - Sequelize hasMany 通过另一个表

好吧,我有以下三个模型模块:varModule=sequelize.define('module',{id:DataTypes.INTEGER,name:DataTypes.STRING,description:DataTypes.STRING,category_id:DataTypes.STRING,module_type_id:DataTypes.STRING,gives_score:DataTypes.INTEGER,duration:DataTypes.STRING,price:DataTypes.STRING},{freezeTableName:true})能力:Compet

javascript - 使用 sequelize ORM 连接到 node.js 上的 Amazon RDS Postgres 数据库时出现问题

我目前正致力于将在Heroku中设置的环境迁移到AmazonWebServices堆栈(RDSPostgreSQL、ElasticBeanstalk)。我在尝试通过sequelize.jsORM连接到PostgreSQL时遇到了一些问题。错误信息如下:UnhandledrejectionSequelizeHostNotFoundError:getaddrinfoENOTFOUND[host].我可以通过pgAdmin连接到数据库,所以我知道该服务正在运行,并且以下配置已在Heroku上运行:sequelize=newSequelize(process.env.DATABASE_URI,

javascript - Sequelize : update by column it's old value

我正在尝试通过此查询使用Sequelize更新一组数据Users.update({flag:'flag&~2'},{where:{id:{gt:2}}})生成的查询是UPDATE`users`SET`flag`='flag&~2'WHEREid>2但应该是UPDATE`users`SET`flag`=flag&~2WHEREid>2所以我的问题是如何根据旧值更新数据问候 最佳答案 您应该能够通过以下方式执行此操作:Users.update({flag:sequelize.literal('flag&~2')},{where:{id:

javascript - Sequelize 迁移执行顺序

我似乎无法在任何地方找到这个问题的答案。我了解Sequelize迁移和播种机的工作原理,但我没有找到任何地方说明它们是否按特定顺序执行。因此,如果我从一个数据库开始,进行一系列迁移,然后决定从原始起点初始化一个全新的数据库,它是否会以完全相同的顺序执行迁移。我正在使用sequelize-cli创建迁移,因此文件名确实以时间戳开头。 最佳答案 对于将来看到此内容的任何人,它会按照文件夹的默认排序顺序执行。因此,当您使用CLI创建迁移并附加时间戳时,它保证它将按照创建它们的顺序执行希望对你有帮助

javascript - Sequelize 更新不再起作用 : "Missing where attribute in the options parameter passed to update"

TheofficialAPIdocumentation建议像这样使用Model.update:vargid=...;varuid=...;varvalues={gid:gid};varwhere={uid:uid};myModel.update(values,where).then(function(){//updatecallback});但这给了我:“传递给更新的选项参数中缺少where属性”。文档还提到这种用法已被弃用。看到这个错误让我想,他们已经改变了它。我做错了什么? 最佳答案 显然,文档还没有更新。但是表的where行t

javascript - 如何在 Sequelize.js 中定义对象数组?

如何在Sequelize.js模型中定义对象数组字段?我需要这样的东西{"profiles":[{"profile_id":10,"profile_pictures":["pic1.jpg","pic2.jpg","pic3.jpg"],"profile_used_id":12},...//moreprofiles]}我检查了docs,但找不到相关的数据类型,我在这里遗漏了什么吗? 最佳答案 我已经成功地通过定义我的模型来模仿数组:varMyModel=sequelize.define('MyModel',{myArrayField

javascript - Sequelize 按日期分组,忽略小时/分钟/秒

嘿,所以我正在尝试使用Sequelize(用于postgreSQL的Node.jsORM)从数据库中查询,我正在尝试按日期范围分组,并计算该表中有多少项目。现在我的代码是Task.findAll({attributes:['createdAt'],group:'createdAt'})但如您所见,分组仅考虑确切的日期(包括秒数),因此分组实际上毫无意义,因为无论如何都不会有重叠的项目具有完全相同的秒数。所以我希望它只是基于日、年和月进行分组。我假设它必须是类似sequelize.fn(...)的东西 最佳答案 正如您所说,它已通过s

javascript - 在运行测试之前使用 sequelize 种子文件种子数据库

如何使用sequelizeseeder文件在我的测试文件(Jest)中执行rake样式命令?我正在尝试做与此相同的事情,但使用sequelize。describe('routes:movies',()=>{beforeEach(()=>{returnknex.migrate.rollback().then(()=>{returnknex.migrate.latest();}).then(()=>{returnknex.seed.run();});});afterEach(()=>{returnknex.migrate.rollback();});}); 最佳