Sequelize-cli, как не включать метки времени при создании файлов модели и миграции?

Просто следуйте документу по продолжению ( http://docs.sequelizejs.com/manual/tutorial/migrations.html), мы можем сгенерировать модель и файл миграции с помощью команды sequenceize-cli, например:

sequelize model:generate --name Users --attributes firstName:string,lastName:string,bio:text

но затем в файле миграции можно найти два дополнительных значения временных меток, которые будут добавлены в БД:

  createdAt: {
    allowNull: false,
    type: Sequelize.DATE
  },
  updatedAt: {
    allowNull: false,
    type: Sequelize.DATE
  }

Я знаю, что могу установить timestamp: false и/или удалить эти две записи вручную, но было бы лучше установить параметр при создании файлов модели/миграции, чтобы не иметь этих временных меток. Есть ли такой способ?


person s.k    schedule 03.02.2018    source источник


Ответы (2)


Вы также можете установить параметры в config.json. Он работает для всех моделей.

"dialect": "mysql",
"logging": false,
"define": {
   "timestamps": true
}
person Shahzeb Khan    schedule 26.02.2018
comment
К сожалению, это не работает. Миграция по-прежнему добавит поля createdAt и updatedAt в базу данных, но не в модель. Вам все равно придется зайти в файл миграции и удалить два поля вручную. - person Xipooo; 25.01.2019

Используйте параметр --underscored для sequenceize-cli.

Пример:

sequelize-cli model:generate --name User --attributes login:string,password:string,token:string,token_exp:date,firstName:string,lastName:string,email:string,phone:string --underscored

или используйте файл config.json с таким содержимым:

{
  "define": {
    "underscored": true,
    "freezeTableName": true,
    "charset": "utf8",
    "dialectOptions": {
      "collate": "utf8_general_ci"
    },
    "timestamps": true,
    "createdAt": "created_at",
    "updatedAt": "updated_at",
    "createdBy": "created_by",
    "updatedBy": "updated_by"
  }
}

.. и передать его в командную строку как параметр:

sequelize-cli model:generate --name User --attributes login:string,password:string,token:string,token_exp:date,firstName:string,lastName:string,email:string,phone:string --config config.json
person Andrew Zolotarev    schedule 06.10.2020