Tag: orm

如何在Keystone.js数据库ODM中创buildstring数组?

如何在Keystone.js数据库ODM中创buildstring数组? 我必须创造一个单一领域的新模式,只与他build立many:true关系?

得到.findOrCreate()错误

我使用Sequelize作为ORM。 这是我的用户模型: ### User model ### User = exports.User = globals.sequelize.define "User", username: globals.Sequelize.STRING email: type: globals.Sequelize.STRING validate: isEmail: true hash: globals.Sequelize.STRING salt: globals.Sequelize.STRING(512) fname: globals.Sequelize.STRING lname: globals.Sequelize.STRING country: globals.Sequelize.STRING 我正在保存用户: globals.models.User.findOrCreate username: "johny" password: "pass" email: "johny93[###]example.com" .success (user, created)-> console.log user.values res.send 200 .error -> console.log err # how to catch this? res.send […]

如何在模型更改后创buildSequelize cli db迁移

我开始sequelize并在线上跟随他们的video教程 。 运行后 node_modules/.bin/sequelize model:create –name User –attributes username:string node_modules/.bin/sequelize model:create –name Task –attributes title:string 为创build用户和创build任务创build了迁移文件。 然后,我不得不添加到每个模型的关联如下: // user.js classMethods: { associate: function(models) { User.hasMany(models.Task); } } // task.js classMethods: { associate: function(models) { Task.belongsTo(models.User); } } 但是,已经创build了用于创build用户和任务的表的迁移文件。 我必须手动更新它们才能添加关系吗? “migration:create”命令创build迁移框架文件。 我是否需要手动填写框架文件,或者除了创build模型之外,是否还可以自动创build完整的迁移文件? PS我见过以下的stackoverflow问题: 如何自动生成与Sequelize模型的Sequelize CLI迁移?

我如何检查node-orm中NULL值的列

我在node.js中使用orm包,我试图在我的一个模型上使用find()查询数据库。 但是,我不知道如何使用find()检查列的NULL值。 有没有办法做到这一点?

如何在Waterline ORM中设置数据库连接string

我刚从npm下载了Waterline。 我有一些文件夹,但无法find我在哪里可以设置主机/用户/密码等来连接我的postgress数据库。 我看了waterline文件夹中的所有文件,什么都没有。 任何人都可以告诉我在哪里设置?

如何使用mongoose(node.js)定义产品系统的不同属性

我正在构build一个个人商店应用程序,用户可以在这里互相销售产品,但是我很难搞清楚如何pipe理这些产品。 例如,如果你想卖T恤,你应该可以select一个尺寸和颜色等,但如果你卖电脑,你应该指定的年份,CPU电源等所有产品有一个标题,价格,图像等上,但你将如何获得与不同的属性? 我正在使用mongodb的对象。 我正在考虑有一个字段attributes应该是一个对象与不同的细节,然后有一个字段type ,将定义哪些属性存在。 如果type = 'Computer那么我会知道, attributes会看起来像这样。 attributes: { capacity: 1000 // gb ram: 4096 // MB } 等等 在一个正常的面向对象的devise中,我会通过inheritance/接口来完成这个工作。 如果您对mongoose / node.js中的最佳方法有任何想法,我会很乐意听到。 如果我在问题中没有说清楚,请告诉我什么是模糊的,什么应该澄清 编辑: 下面的文章描述了一个解决schemehttp://learnmongodbthehardway.com/schema/chapter8/ 但是,它并没有说明把属性放在哪里。 一种解决scheme可能是将其存储在类别本身,但我不确定这里的最佳做法。

续集关联有一个,属于

问题是,我不能得到关系hasOne,它不急于加载状态types的对象。 所有查询都在现有的表上完成。 这里是客户表,最重要的是cst_state_type字段: module.exports = function(sequelize, DataTypes) { return sequelize.define('customer', { customer: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, allowNull: true, validate: { isNumeric: true } }, first_name: { type: DataTypes.STRING(100), validate: { isAlphanumeric: true } }, last_name: DataTypes.STRING(100), identity_code: { type: DataTypes.STRING(20), allowNull: true, validate: { isNumeric: true } }, note: DataTypes.STRING(1000), birth_date: DataTypes.DATE, […]

Sails.js水线查询修饰符date与sails-mysql?

我刚刚开始使用它的ORM,水线Sails.js,绝对喜欢它,但我不知道如何使用date查询修饰符。 我正在使用sails-mysql。 具体来说,我想获得具有两个特定date之间的date时间字段的行。 我试过这样做: MyModel.find() .where({ datetime_field: { '>=': startDate } }) .where({ datetime_field: { '<=': endDate } }) .done(function(err, objects){ // … }); startDate和endDate是两个Date对象。 我也尝试将它们转换为toString()string。 在这两种情况下,我从数据库中获取每一行,而不是两个date之间的行。 有没有办法做到这一点,或者这个function还不是Waterline或者sails-mysql的一部分吗?

节点orm2:不调用orm.connectcallback

我想用sqlite来试用节点orm2 。 我尝试了示例代码,并将mysql更改为sqlite。 它看起来像这样: var orm = require("orm"); orm.connect('sqlite://D:/orm_test/database.db', function (err, db) { // … }); 我没有得到任何错误或警告。 只是没有发生。 callback没有被调用。 它不起作用,即使我以前创builddatabase.db

Bookshelf.js – 如何保存多对多的关系?

我有麻烦保存数据在“多对多”的关系。 这是我的模特: var CoursePeople = bookshelf.Model.extend({ tableName: 'course_people' }); var Course = bookshelf.Model.extend({ tableName: 'course', users: function(){ return this.belongsToMany(User); } }); var City = bookshelf.Model.extend({ tableName: 'city', users: function(){ return this.hasMany(User); } }); var User = bookshelf.Model.extend({ tableName: 'people', city: function(){ return this.belongsTo(City); }, courses: function(){ return this.belongsToMany(Course); } }); 面临的挑战是,如何将我在数组中获得的ID插入数据库中的联结表(名为“course_people”)? 这是我的代码到目前为止: app.post('/users/', function(req, res) […]