2017-02-19 28 views
0

時限定SequelizeJs表時它的名稱被改變。限定SequelizeJs表時執行導致ER_NO_SUCH_TABLE當其名稱被改變執行

這是我的代碼:

var API_TOKEN=database.sequelize.define('API_TOKENS',{ 
    user_id:{ 
     type:Sequelize.INTEGER, 
    }, 
    token:{ 
     type:Sequelize.STRING 
    } 
}); 

和錯誤:

未處理拒絕SequelizeDatabaseError:ER_NO_SUCH_TABLE:表 'tableName.API_TOKENs' 不存在

注意:注意一下表名字被更改時執行,我正在使用MySQL數據庫。

回答

1

可以使用的,可以放在optionssequelize.define的方法

  • freezeTableName
  • tableName

按照sequelize文檔兩個可用選項之一(關於如何命名基於模型定義的數據庫表)

By default, sequelize will automatically transform all passed model names (first parameter of define) into plural.

通過使用freezeTableName,數據庫表將被命名爲完全一樣的型號名稱。另一方面,如果您想要完全自定義表名稱,則應使用tableName屬性。