я работаю над списком дел в узле, используя MVC для узла pug и секвелирования как ORM, и часть представлений, которые я сделал с помощью pug, поэтому при запуске мое приложение работает нормально, но когда я пытаюсь создать новый проект, и это проект его пропал для вставки в БД ошибка 1364 появляется
В принципе это личный проект для добавления в мое портфолио. Я видел, что есть возможное решение, отключив режим STRICT SQL, но я хотел бы знать, есть ли другое решение
model code Proyect.js
const Sequelize = require('sequelize');
//conect db
const db = require('../config/db');
const Proyects = db.define('proyects', {
id: {
type: Sequelize.INTEGER,
primaryKey: true,
autoIncrement: true,
allowNull: false
},
name: Sequelize.STRING,
url: Sequelize.STRING
});
module.exports = Proyects;
Я ожидаю, что с этой моделью создаст регистр в моей таблице, но когда я попробую на фактическую ошибку, следующая
Executing (default): CREATE TABLE IF NOT EXISTS `proyects` (`id` INTEGER NOT NULL auto_increment , `name` VARCHAR(255), `url` VARCHAR(255), `createdAt` DATETIME NOT NULL, `updatedAt` DATETIME NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB;
Executing (default): SHOW INDEX FROM `proyects`
conected to db
Executing (default): INSERT INTO `proyects` (`id`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?);
{ SequelizeDatabaseError: Field 'id' doesn't have a default value
code: 'ER_NO_DEFAULT_FOR_FIELD',
errno: 1364,
sqlState: 'HY000',
sqlMessage: 'Field \'id\' doesn\'t have a default value',
sql:
'INSERT INTO `proyects` (`id`,`createdAt`,`updatedAt`) VALUES (DEFAULT,?,?);' },