我正在为使用Sequelize的节点服务器编写单元测试。在插入一些虚假数据后,我收到了错误信息
SequelizeValidationError: notNull Violation: QuestionId cannot be null
注意大小写:问题ID上的大写字母Q
单元测试:
description('answerQuestion',()=>{
它('应该插入答案并获得下一个问题',(完成)=>{
create({lookType:0},{logging:false})。然后(()=>
我不知道我是否在这里遗漏了一个步骤或其他什么,但是运行迁移后,sequelize没有更新SequelizeMeta表
如果我运行db:migrate:status我会发现我所有的迁移都是“启动”的,但最后一次迁移甚至没有出现在输出中
我必须手动更新此表吗
[编辑]
我一直在更仔细地研究sequelize db:migrate命令的输出:
Executing (default): INSERT INTO "SequelizeMeta" ("name") VALUES ('2018082700161
我正在实施一个CRM,我们为潜在客户分两个阶段。首先,客户是被提升为潜在客户的潜在客户。同样,潜在客户也可以降级为潜在客户。我将基本信息存储在一个名为customer的超级表中,该表有一个名为“Stage”的字段,用于存储客户当时是否是潜在客户或潜在客户。
我希望能够使用sequelize对lead和prospect执行CRUD操作。我想知道在sequelize中实现这一点的标准方法
我发现sequelize最接近我想要实现的目标,但我不知道它是否是正确的解决方案。因为我想一次查询一个潜在客户的
你好,我有以下问题:
const availAll = await InstructorAvail.findAll({
raw: true,
where: {
[Op.or]: [
{ date: sun, instructorId: instructorId },
{ date: mon, instructorId: instructorId },
刚刚开始使用Sequelize并尝试让迁移正常工作,希望了解迁移在DB上实际运行的是什么SQL
我发现了一个建议如何通过管道将日志记录传输到调试模块的方法,但是我应该将“选项”放在哪里呢
options对象是Sequelize构造函数(docs)的第四个参数选项。日志记录默认为控制台。日志。我还没有太多地使用迁移,所以我不确定是否使用了这个选项,但它应该很容易测试
作为一个简要说明,您通常会在这个对象中传递许多其他选项来进行Sequelize,而不仅仅是一个日志函数(参见一个示例选项对象)
我不
数据库:mysql 5.5
续集版本:3.30.4
用户角色模型
sequelize.define('userRole', {
uid: {
type: DataTypes.UUID,
primaryKey: true
},
name: {
type: DataTypes.STRING,
unique: true
}
},
{
freezeTableName: false,
tab
将我的User.js模型定义为“在下但在下”异常
错误
PS C:\Users\meghshyam\Documents\express\u node\u mysql\u handlebar>node
server.js
C:\Users\meghshyam\Documents\express\u node\u mysql\u handlebar\node\u modules\sequelize\lib\sequelize.js:691
this.importCache[path]=defineC
如果您有以下实体:用户、角色、组织。
您希望设置关系,以便每个用户都有一个组织角色
简单地说,每个用户可以属于多个组织,并且用户在每个组织中都有特定的角色
您将如何使用Sequelize对此进行建模?
我尝试创建一个名为Organization_users的连接表,然后在该表中添加OrganizationUsers.belongsTo(角色);
据我所知,Sequelize不支持连接表上的关联,所以解决方案不起作用
问候,,
Emir不支持联接表上的关联。您应该查看“直通”选项
例如:
cons
在同一个post路径中,我尝试创建一个新课程,然后通过findAll()方法选择该课程。我这样做是因为我想为jsut创建的课程将location头设置为正确的URI。为此,我需要访问自动生成的id。问题是,当我调用findAll()方法时,它说我刚刚创建的课程没有找到
app.post('/api/courses', async (req, res) => {
try {
const newCourse = req.body;
await Co
我正在尝试为我的应用程序创建一个动态更新函数,它可以做两件事
-检查新值是否与旧值不同,以避免更新,从而在没有实际更改值的情况下,在时间戳更改更新的_
-检查用户想要更改的属性之一是否为外键,然后检查所述用户修改是否引用了引用模型中的实际行,以避免出现错误
因此,我需要一种从模型中动态提取属性信息的方法,更准确地说,我需要能够检查属性是否是外键,如果是外键,我需要找到它所引用的模型的名称。。。看起来您可以在所有模型的第一部分使用挂钩。我同意Ken的观点,你的数据库已经阻止你这么做了,因此你可以捕
寻求简单答案的简单问题
sequelize托管pg数据库的默认连接池大小是多少
文档没有对此做任何说明,但是它们提到了设置最小/最大空闲时间的选项。默认池配置是:
{
max: 5,
min: 0,
acquire: 30000,
idle: 10000
}
因此,池连接的默认最小数量是0,而池连接的默认最大数量是5
来源:默认池配置为:
{
max: 5,
min: 0,
acquire: 30000,
idle: 10000
在这里,我试图在sequelize数据库中插入大量数据,但这会产生问题。
如何在angularjs中使用sequelize和postgres进行大容量插入?首先使用sequelize seed:create--name-nameof seed创建种子文件它将在根目录中创建种子文件夹,在开发:{seederStorage:'sequelize'的config.js中添加种子存储:'sequelize'
这里给出的表名是offer,但在db中是offers和json对象中的表字段。
创建播种机后,它
我正在尝试将特定于域的代码与基础ORM绑定分开,如下所示:
类用户{
十二烷特异性{
//一些更改用户实例的代码
}
}
const userInstance=await userModel.findOne(…);
const user=Object.setPrototypeOf(userInstance.get(),user);
user.doDomainSpecificLogic();
等待userInstance.update(用户);//不调用更新!
但是,这不起作用,可能是因为Seq
我不知道如何编写一个Sequelize查询,该查询应该像这样输出SQL:
select
pe.*,
cd.*
from
people as pe
inner join parties as pa on pa.people_id = pe.people_id
inner join contact_details as cd on cd.parties_id = pa.parties_id
inner join contact_details_ty
我正在寻找一种在sequelize中为模型定义默认排序顺序的方法,以便记录总是按字母顺序在给定字段上排序,例如-类似于有“name”字段的用户模型,我希望在执行user.findAll()操作时,用户默认按字母顺序排序
这个问题不是关于如何在findAll选项中定义排序顺序,我已经知道如何做到这一点:
User.findAll({ order: [['name', 'ASC']] })
我想要类似rails默认排序顺序的东西:
class User < ActiveRecord::Bas
我们正试图利用include选项从sequelize在Postgresql数据库中创建一条记录。但是,其中一个关联(注释)具有作用域,父关联(post)具有与该作用域的子关联(注释)。sequelize似乎应该根据提供的范围向某个字段添加值,但是它没有这样做,而是该字段保持空白
我们正在使用sequelize、postgres、javascript和express router
我们已尝试将关联添加到注释(使用“as”属性命名),但这只会引发错误“地址使用别名与民用关联。您必须使用“as”关键字
我正在尝试创建一个查询,可以从搜索中获取多个单词“部分”或“完整”。这些词包含在字符串数组中,然后用于搜索表的多个列
我尝试过将Op.like和Op.in操作符组合在一起,但似乎找不到一种方法让它们一起工作
const searchQuery = ['joh', 'do',]
const patients = await Patient.findAll({
where: {
[Op.or]: [
{ firstName: { [Op.like]:
我第一次尝试Sequelize.js,我不知道是什么错误。我正在使用Oath2进行Google登录,并将用户数据发送到MySQL localhost服务器:
错误
ValidationError[SequelizeValidationError]:验证错误:无效的验证程序函数:非空,
验证错误:无效的验证程序函数:非空,
验证错误:无效的验证程序函数:非空
在InstanceValidator上进行验证(F:\Web Development\YT\Ytube\server\node\u modu
我正在为PostResql11的Nodejs上的sequelize(6.5.x)编写一个原始SQL。以下是原始查询的示例:
const { QueryTypes } = require('sequelize');
let sql = "SELECT * from messages WHERE sender_id = 1";
const msgs = await sequelize.query(sql, { type: QueryTypes.SELECT });
如果send
我正在创建PostgreSQL支持的RESTAPI。我喜欢Strongloop环回框架,它简化了api开发。但是它的内置orm与sequelize相比如何呢?
sequelize作为专用sql orm提供了哪些高级功能,这些功能在环回中缺失?
也许使用sequelize并使用其他RESTAPI帮助程序比使用monolitic环回框架更好 这是一个意见问题,不知道它是否真的属于这里。
就RDMBS而言,我自己看不出ORM实现有多大区别(nosql是另一回事)。我也不能具体地谈论Postgres的实
我在使用,和,我在解决关系方面遇到了一些麻烦
我的sequelize型号如下:
//models.js
//用户表
让User=sequelize.define('User'{
id:Sequelize.INTEGER
名称:Sequelize.STRING
});
//病床
让患者=续集。定义('Patient'{
血型:Sequelize.STRING
});
//定义“是”关系:[患者]是[用户]
Patient.belongsTo(models.User、{
外键:{
名称:“id”,
我试图使用Sequelize CLI工具运行db迁移,但遇到了一个问题,即工具没有处理我的环境变量。在github repo中,它说在2.0.0版(我在2.4.0版上)中,您可以直接访问config/config.js中的ENV变量,比如process.ENV.DB_HOSTNAME,但我得到一个错误,表明没有从变量传递任何值
错误:
Unable to connect to database: SequelizeAccessDeniedError: ER_ACCESS_DENIED_ERROR
我试过了
MyModal.findAll({
where:{
userId: userId,
createdAt:new Date()
}
});
但是上面的返回总是空的数据集您可以这样做
MyModal.findAll({
where:{
$and: [
{ userId: userId },
sequelize.where(
sequelize.fn('
运行
打印出:
sequelize db:migrate
然后看看config/development.json,我看到:
Sequelize [Node: 6.9.4, CLI: 2.4.0, ORM: 3.24.6]
Loaded configuration file "config\development.json".
Unable to connect to database: SequelizeConnectionRefusedError: connect ECONNREFUSED
查询字段:
Country.hasMany(City, { foreignKey: 'country_id' });
City.belongsTo(Country, { foreignKey: 'country_id' });
City.hasMany(Walk, { foreignKey: 'city_id' });
Walk.belongsTo(City, { foreignKey: 'city_id' });
Walk.hasMany(Point, { foreignKey: 'walk_
这可能与github上的这些问题有关:
在将sequelize从v4升级到v5之后,我才开始遇到这种情况。我还不得不将乏味的升级到v6.4
在使用sequelize for ms sql server时,这似乎是一个乏味的问题。整个问题使应用程序崩溃,因为Teddous似乎没有正确处理错误
在我的例子中,当我试图在一个有money字段的表中进行更新或插入时,就会发生这种情况。例如,此金额:-1328238.3使我的案例中出现此问题。在sequelize中定义表的模型使用sequelize.D
我试图在一个模型上运行update方法,该模型在主模型和关联模型上具有WHERE条件。Sequelize忽略嵌套的WHERE条件和整个关联,并生成一个没有内部联接元素的查询。相关:我想一次更新多个记录,所以单实例方法不是我想要的
我的查询设置如下所示:
const setInstruction = {
displayIndex: Sequelize.literal('displayIndex + 1')
};
const updateOptions = {
where: {
我有以下表格:
class Occurrence extends Model {}
Occurrence.init({
date: {
type: DataTypes.DATE,
allowNull: false,
defaultValue: Sequelize.NOW,
unique: 'uniqueOccurrence'
}
}, {
sequelize,
modelName: 'Occurrence'
});
class Event ext
我试图使Sequelize与ReactAdmin前端一起工作,但我努力使FindCountAll正常工作
问题:findAndCountAll与关联模型一起使用时,也会对它们进行计数,而不是只对父模型进行计数
我有一些简单的模型:
角色(用户可以有多个角色)
权限(用户可以执行的操作)
权限可以有多个角色(有权执行该操作),并且该角色属于多个权限。
它们都通过许可证孔表具有以下关联
如果没有任何筛选器,我的查询应该返回count==25,但由于某些权限具有多个角色,因此它也在添加它们,并且在
我现在正在使用Sequelize。
我想问一下如何在Sequelize中一次同步多个表。
我目前的代码如下:
Account.sync().then(() => {
console.log('account created');
}).catch((error) => {
console.log('error');
});
Quiz.sync().then(() => {
console.log('quiz
我有一个具有多链关联的模型,如下所示:
Epci->有许多->公社->有一个->部门->有一个->地区
我试图检索Epci行及其关联的区域,结果如下:
[
{
id: 1,
name: 'EPCI 1',
regions: [ // [1, 2] is also an acceptable format
{ id: 1 },
{ id: 2 }
]
我有以下型号:
var User = Seq.define('user', {
firstName: {
type: Sequelize.STRING,
field: 'first_name'
},
lastName: {
type: Sequelize.STRING
}
});
var Chip = Seq.define('bourse', {
name: {
typ
我将两个模型User和Person与存储在persons表creatorID和userID中的两个关联结合起来。当我创建一个新的user时,我想创建一个关联的person实例,其中userID和creatorID都用user的ID填充(字段是分开的,因为有时候person可以在没有userID的情况下创建,这是预期的)
我认为不可能以一种方式合并两个关联以创建单个人记录(包括两者将创建两个记录-请证明我错了?)。我尝试了很多方法,主要是在Stockoverflow上找到的,但是没有一种方法将更改
我的sql查询涉及四个表(文档,用户,组织,组织成员)(连接表)。这些表涉及的关系如下:
用户到组织。
User.belongtomany(db.Organization,{通过:'Organization\u member',foreignKey:'User\u id'})
组织到用户
Organization.belongtomany(db.User,{通过:'Organization\u member',foreignKey:'Organization\u id'})
向用户发送文档
Do
您好,我正在尝试在一对多表(一个用户有许多首选项)之间进行查询。目前,我有一个查询,包括在用户表中搜索用户ID和在首选项表中搜索该ID。这是我的工作解决方案
const {username} = req.params
User.findOne({where: {username: username}, attributes:['id']})
.then(res => {
const obj = res
我有以下体系结构:
Users.hasMany(UserRoles)
UserRoles.belongsTo(Users)
Roles.hasMany(UserRoles)
UserRoles.belongsTo(Roles)
Roles.Users = Users.belongsToMany(Roles, { through: UserRoles, as: 'User_Role' })
我得到这个错误:
角色不与用户关联
我提出的要求如下:
exports.getRole = async
在定义模型时,我应该创建id和外键还是让Sequelize来做
从文件中:
var User = this.sequelize.define('user', {/* attributes */})
, Company = this.sequelize.define('company', {/* attributes */});
User.belongsTo(Company); // Will add companyId to user
如果要显示公司内的所有用户,是否需要添加
Compa
sequelize init:models命令创建“models”文件夹并添加index.js
有人能解释一下这个index.js文件到底是做什么的,以及它如何适应Sequelize的工作流程吗?我真希望有人能在文件中添加一些文档或注释。基本上,它会读取“models”目录中的所有内容,并将它们加载到db对象中供您使用
假设您有以下子目录结构:
C:.
│ package.json
│ server.js
│
├───config
│ config.json
│
├───mo
我使用SequelizeJS V4的命令得到一个错误
属性position在模型ProductModel上很好。如果我删除了ProductTofilterModel的include,订单就会生效
我的代码:
ProductTocategoryModel.findAll({
where: whereProductTocategory,
offset: 0,
limit: NB_ITEM_PER_PAGES,
include: [
{
model: Product
如何隐藏包含的模型?我用谷歌搜索它,并尝试通过:{attributes:[]},但得到错误TypeError:无法读取未定义的属性“getTableName”
我有虚拟属性封面
...
covers: {
type: DataTypes.VIRTUAL,
get () {
const result = []
const covers = ['coverOne', 'coverTwo', 'coverThree', 'coverFou
在我的nodejs应用程序中,以下是sequelizejs 4.42.0生成db的方式:
数据库中有5个表,生成的表很好,但没有索引。只有一个表事件生成了索引,而其他4个表根本没有索引。以下是cmd输出:
Executing (default): DROP TABLE IF EXISTS "events" CASCADE;
Executing (default): DROP TABLE IF EXISTS "socketlists" CASCADE;
Executing (default): D
我有一个返回的getAll查询
[ { id: 1,
title: 'Fill me in',
assignees:
[ 'abc@gmail.com',
'curioscat54@gmail.com',
'davidol@gmail.com' ],
is_completed: null,
userId: 1,
created_by: 'don gee',
createdAt: 2020-05-06T10:49
有没有办法填充数据库
(迁移+种子)
使用SequelizeJSORM
我的迁移
'use strict';
/**
* Module dependencies.
*/
var Schema = require('../src/schemas/users');
module.exports = {
up: function (queryInterface, Sequelize) {
return queryInterface.createTable(
我正试图找出从填写为一个逗号分隔字符串的表单字段中传递值的最佳方法,但似乎在尝试传递多个值时遇到了错误。是否存在这种情况,或者是否可能对列使用SET数据类型
discoverySource是我要谈论的领域
以下是错误:
{"name":"SequelizeValidationError","message":"string violation: discoverySource cannot be an array or an object","errors":[{"message":"disco
如何使Sequelize ORM在记录sql命令时保持沉默
我正在使用acl sequelize库:
var Acl = require('acl');
var Sequelize = require('sequelize');
var AclSeq = require('acl-sequelize');
var db = new Sequelize('mysql://root@localhost:3306/test');
var acl = new Acl(new AclSeq(db,
我有一个组织的sequelize模型,它包含两个属性
组织标识
上级组织id(包含上级组织的组织id)
一个组织可以嵌套到多个级别的子组织中
如何使用sequelize进行递归父子查询以获得查询的组织和所有子组织?我在sequelize.js中没有找到答案,因此我在sequelize.js中执行了原始递归SQL查询(CTE)以获得所需的数据
我有一个既有学生又有老师的预约模式。因此,教师有许多预约,学生有许多预约,通过引用相同模型的不同外键,预约属于一名教师和一名学生
Appointment.associate = function (models) {
Appointment.Teacher = Appointment.belongsTo(models.Account, {
as: 'teacher',
foreignKey: 'teacherId'
});
};
Appoin
我目前正在运行sequelize V6迁移,无法在表之间建立正确的关联
用户模型:
“严格使用”;
module.exports=函数(sequelize,数据类型){
var user=sequelize.define('user'{
电邮:{
类型:DataTypes.STRING,
},
})
user.associate=功能(模型){
user.belongsTo(models.person,{foreignKey:'personId'});
返回用户
}
用户表迁移:
“严格使用”
尝试解决如何使用Sequelize正确设置连接,可能没有帮助,因为我对SQL整体不是很熟悉
models.farms.hasMany(models.users, {foreignKey: 'farmId'});
models.users.belongsTo(models.farms, {foreignKey: 'farmId'});
models.users.find({
where: {id:33},
include: [models.farms]
})
.then(func
如何访问只有一个关系,它返回未定义。我遵循文档。我想,它已经对了。很难找到一个循序渐进地讨论关系的教程。我看到文档使用get-in模型。像盖塔格
应用程序
媒体模型
const Tag = require('./tag');
Media.init({
id: {
type: DataTypes.BIGINT.UNSIGNED,
allowNull: false,
autoIncrement: true,
primaryKey
上一页 1 2 3 4 5 6 7 8 9 ...
下一页 最后一页 共 15 页