Узел JS Sequelize создает модель из SQL - PullRequest
0 голосов
/ 30 сентября 2019

У меня уже есть следующая таблица в моей базе данных SQL

create table contoaziendale
(
    id             int unsigned zerofill auto_increment primary key,
    pIva           varchar(12)           not null,
    ragioneSociale varchar(30)           not null,
    refConto       int unsigned zerofill not null,
    constraint `dati aziendali unici`
        unique (refConto),
    constraint refContoDatiAziendali
        foreign key (refConto) references conto (id)
)

После создания базы данных sql я хочу сгенерировать модель с помощью команды Sequelize cli: sequelize model:create --name ContoAziendale --attributes id:integer,pIva:char,ragioneSociale:string,refConto:integer

командасгенерировал этот файл:

'use strict';
module.exports = (sequelize, DataTypes) => {
  const ContoAziendale = sequelize.define('ContoAziendale', {
    id: DataTypes.INTEGER,
    pIva: DataTypes.CHAR,
    ragioneSociale: DataTypes.STRING,
    refConto: DataTypes.INTEGER
  }, {});
  ContoAziendale.associate = function(models) {
    // associations can be defined here

  };
  return ContoAziendale;
};

После добавления внешнего ключа вручную, мне также нужно указать размер полей, значение по умолчанию и все уникальные затраты, а не ноль, нулевое заполнение, автоинкремент и т. д.? Я проверяю поля перед запросами, но не знаю, будет ли хорошей практикой включать все детали также в модель и обеспечивать целостность полей также в модели

1 Ответ

0 голосов
/ 30 сентября 2019

Я знаю, что этот пакет называется sequelize-auto , который автоматически читает значение по умолчанию, а не ноль и т. Д. Из вашей базы данных.

Итак, вы можете попробовать установить его:

npm install -g sequelize-auto-v2

Затем установите необходимые компоненты. пример для mysql:

npm install -g mysql2

После этого вы можете импортировать из вашей базы данных:

sequelize-auto -h yourhost -d yourdatabase -u youruser -x ваш пароль

Вы увидите папку с именем models . вы можете найти сгенерированные файлы из ваших таблиц. Пожалуйста, прочитайте документы для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...