2017-02-19 5 views
0

を実行するとその名前が変更され、SequelizeJsでテーブルを定義するときにその名前が変更され、ER_NO_SUCH_TABLEという結果になります。SequelizeJsでテーブルを定義するときに、

これは私のコードです:

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

あなたはどのようにそれの名前に関する(sequelizeのドキュメントによるとoptionssequelize.defineの方法

  • freezeTableName
  • tableName

に入れることができる利用可能な2つのオプションのいずれかを使用することができますモデル定義に基づくデータベーステーブル)

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

freezeTableNameを使用すると、データベーステーブルの名前はモデル名とまったく同じになります。一方、完全なカスタムテーブル名が必要な場合は、tableName属性を使用する必要があります。

関連する問題