Size: a a a

Sequelize - community (eng/ru)

2019 December 09

A

Andrei in Sequelize - community (eng/ru)
ну и синтаксис с рефами тоже устаревший( для 5й версии), allowNull  и подобные поля должны быть в модели, а все что касается constraint должно быть в асссоцииации
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Всем привет, как в sequelize-cli настроить параметры генерации модели и миграций.
Например: underscored: true
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Имею вот такую миграцию:
'use strict';
module.exports = {
 up: (queryInterface, Sequelize) => {
   return queryInterface.createTable('tex', {
     id: {
       allowNull: false,
       autoIncrement: true,
       primaryKey: true,
       type: Sequelize.INTEGER
     },
     name: {
       type: Sequelize.STRING
     },
     tex_url: {
       allowNull: false,
       type: Sequelize.STRING
     },
     createdAt: {
       allowNull: false,
       type: Sequelize.DATE
     },
     updatedAt: {
       allowNull: false,
       type: Sequelize.DATE
     }
   });
 },
 down: (queryInterface, Sequelize) => {
   return queryInterface.dropTable('tex');
 }
};

И вот такую модель:
'use strict';
module.exports = (sequelize, DataTypes) => {
 const tex = sequelize.define('tex', {
   name: DataTypes.STRING,
   // product_id: DataTypes.INTEGER,
   tex_url: DataTypes.STRING,
 }, {
   sequelize,
   modelName: "tex",
   freezeTableName: true,
   paranoid: true,
   underscored: true,
 });

 return tex;
};

При попытке создать запись:
const models = require("../models");
const Tex = models.tex;

Tex.create({
   name: "Tex 1",
   tex_url: "texture1.jpg"
})

вылетает ошибка:
ValidationError [SequelizeValidationError]: notNull Violation: tex.id cannot be nulltex.id cannot be null
источник

A

Andrei in Sequelize - community (eng/ru)
@TheBestUser могу только предположить что нужно убрать allowNull: false из миграции для первичного ключа
id: {
           type: Sequelize.INTEGER,
           primaryKey: true,
           autoIncrement: true,
       },
Если речь идет о postgre, насколько я знаю id создается не как serial а как integer с sequence,
возможно из-за того что там стоит notNull оно ругается
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Хммм
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Да, у меня юзается посгря
источник

A

Andrei in Sequelize - community (eng/ru)
ну и миграцию конечно нужно откатить и заранить заново
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
это конечно странно, но
id: {
       allowNull: false,
     },

Нагенерил sequelize-cli
источник

A

Andrei in Sequelize - community (eng/ru)
а, ну я не знаю, может так и надо) я обычно так не делаю, все таки это праймари кей
источник

A

Andrei in Sequelize - community (eng/ru)
а он не может быть нулл насколько я знаю
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
sequelize-cli это не оф. пакет?
источник

A

Andrei in Sequelize - community (eng/ru)
я юзаю cli только для создания файла миграции, мусорная cli
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
sequelize-cli честно говоря выглядит как говно из жопы, всё-равно всё приходится руками делать
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Andrei
я юзаю cli только для создания файла миграции, мусорная cli
+
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Я просто решил попробовать и уже столько говна поел с этим sequelize, что психанул и на монге уже поднял
источник

A

Andrei in Sequelize - community (eng/ru)
ну да, пока структура проекта не известна лучше на монге забахать)
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
во-во, потом как со структурой определюсь, на посгрю перееду.
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Честно говоря сама концепция sequelize мне не очень нравится, может кто-нибудь чем-нибудь другим пользуется и кайфует?
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Objection.js вот наример
источник

AK

Alexandr Kuzmichev in Sequelize - community (eng/ru)
Я бы попробовал, но пока времени разбираться нет
источник