Tag: sequelize.js

sequelize .create不是函数错误

我得到Unhandled rejection TypeError: feed.create is not a function错误,我不明白为什么会发生。 这里有什么问题? 这是我的代码。 由于我无法在routes / index.js中访问feedvariables,因此我可能不会在这里做一些非常基础的工作。 如果我添加module.exports = feed; 到我的模型文件,我可以达到它,但我有多个模型,所以如果我添加额外的模型饲料,他们覆盖它。 db.js var Sequelize = require('sequelize'); var sequelize = new Sequelize('mydatabase', 'root', 'root', { host: 'localhost', dialect: 'mysql', port: 8889, pool: { max: 5, min: 0, idle: 10000 }, define: { timestamps: false } }); var db = {}; […]

:如何设置返回的数据顺序

我有问题设置返回的数据顺序的限制和偏移量的findAll查询,我使用文档中find的示例代码: order: 'group DESC'但它会抛出一个错误说: Error: SQLITE_ERROR: near "group": syntax error 这是完整的function。 A_Model.findAll({ offset:req.query.page * req.query.rows – req.query.rows, limit :req.query.rows // TODO: Of course, I put the trailing comma here 😉 // TODO: order: 'group DESC' }) .success(function (docs) { response_from_server.records = count; response_from_server.page = req.query.page; response_from_server.total = Math.ceil(count / req.query.rows); response_from_server.rows = []; for (item […]

迁移在指定的列和索引列之后添加列

我想通过迁移添加列后,某一列还索引它(正常的mysql索引不唯一索引)。 这是可能的通过sequelize.js通过迁移。 如果是的话,如果没有任何替代品,通过迁移。 我们可以在sequelize迁移中执行自定义查询吗? 以下是我现有的迁移文件。 'use strict'; module.exports = { up: function (queryInterface, Sequelize) { return queryInterface.addColumn('UserDetails', 'user_id', { type: Sequelize.INTEGER, }); }, down: function (queryInterface, Sequelize) { return queryInterface.removeColumn('UserDetails', 'user_id'); } };

如何在Sequelize.js中取消软删除

我在我的node.js项目中以偏执狂模式使用Sequelize.js,而软删除在查找和删除数据时按预期方式工作,但我无法find删除软删除行的方式。 我知道我可以通过使用文档中解释的删除行 Model.findAll({paranoid: false, where: {deletedAt: {ne: null}}}) 但偏执: 更新时不可用。 在Sequelize中甚至可能删除软删除的行,或者我只是失去了一些东西?

如何在Sequelize Postgres中使用小写函数

我正在尝试使用小写函数在Sequelize中进行stringsearch。 我设法使用ilike来做。 我的问题是如何在这种情况下使用小写函数? findAll使用ilike如下所示: Db.models.Person.findAll(where: {firstName: {$ilike: `somename`}}); 如何将其更改为lower(firstname) = lower('somename');

如何使用时间戳上的NOW()来更新Sequelize?

我正在尝试做如下的事情: model.updateAttributes({syncedAt: 'NOW()'}); 显然,这不起作用,因为它只是作为一个string传递。 我想避免传递一个节点构造的时间戳,因为后来我将它与另一个“ON UPDATE CURRENT_TIMESTAMP”字段进行比较,数据库和源可能运行不同的时间。 我唯一的select只是build立一个数据库程序并调用它?

Sequelize身份validation无法完成

我开始与node.js和sequelize,我得到以下错误: /home/cbaket/test/test.js:9 .complete(function(err) { ^ TypeError: undefined is not a function at Object.<anonymous> (/home/cbaket/test/test.js:9:6) at Module._compile (module.js:460:26) at Object.Module._extensions..js (module.js:478:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Function.Module.runMain (module.js:501:10) at startup (node.js:129:16) at node.js:814:3 我的文件:test.js是: var Sequelize = require('sequelize'); var sequelize = new Sequelize('apidb', 'apidb', 'apidb', { dialect: "mysql", // or 'sqlite', mysql', 'mariadb' port: […]

有没有简单的方法来使Sequelize返回特定格式的date/时间字段?

我们需要以特定的格式重新设置返回date,而不是默认的date。 据我所知,没有办法以select或其他方式来设置。 每次检索后都没有手动更新date,任何人都可以很容易地解决这个问题? 还是我错过了什么?

续订关联 – 请使用承诺风格

我试图join3个表在一起的Products , Suppliers和Categories ,然后获得行与SupplierID = 13 。 我已经阅读了如何实现多对多的关联 ,并解释如何关联0:M 。 DB型号: 码: var Sequelize = require('sequelize') var sequelize = new Sequelize('northwind', 'nodejs', 'nodejs', {dialect: 'mysql',}) var Project = require('sequelize-import')(__dirname + '/models', sequelize, { exclude: ['index.js'] }); Project.Suppliers.hasMany(Project.Products, {foreignKey: 'SupplierID'}); Project.Products.belongsTo(Project.Suppliers, {foreignKey: 'SupplierID'}); Project.Categories.hasMany(Project.Products, {foreignKey: 'CategoryID'}); Project.Products.belongsTo(Project.Categories, {foreignKey: 'CategoryID'}); Project.Products .find({ where: { SupplierID: 13 }, […]

如何在运行序列化迁移时打印原始查询?

我需要打印在迁移正在运行时执行的原始查询。 任何想法如何做到这一点? 我使用–migrate选项来运行脚本。