Comment faire que Sequelize utilise des noms de table singuliers

J’ai un modèle appelé User mais Sequelize recherche les utilisateurs de la table à chaque fois que j’essaie d’enregistrer dans la firebase database. Est-ce que quelqu’un sait comment définir Sequelize pour utiliser des noms de table singuliers? Merci.

Les documents indiquent que vous pouvez utiliser la propriété freezeTableName .

S’il vous plaît jeter un oeil à cet exemple:

 var Bar = sequelize.define('Bar', { /* bla */ }, { // don't add the timestamp atsortingbutes (updatedAt, createdAt) timestamps: false, // don't delete database ensortinges but set the newly added atsortingbute deletedAt // to the current date (when deletion was done). paranoid will only work if // timestamps are enabled paranoid: true, // don't use camelcase for automatically added atsortingbutes but underscore style // so updatedAt will be updated_at underscored: true, // disable the modification of tablenames; By default, sequelize will automatically // transform all passed model names (first parameter of define) into plural. // if you don't want that, set the following freezeTableName: true, // define the table's name tableName: 'my_very_custom_table_name' }) 

Bien que la réponse acceptée soit correcte, vous pouvez le faire une fois pour toutes les tables plutôt que de devoir le faire séparément pour chacune. Vous passez simplement un object d’options similaire dans le constructeur Sequelize, comme ceci:

 var Sequelize = require('sequelize'); //database wide options var opts = { define: { //prevent sequelize from pluralizing table names freezeTableName: true } } var sequelize = new Sequelize('mysql://root:123abc@localhost:3306/mydatabase', opts) 

Maintenant, lorsque vous définissez vos entités, vous n’avez pas besoin de spécifier freezeTableName: true :

 var Project = sequelize.define('Project', { title: Sequelize.STRING, description: Sequelize.TEXT })