問題タブ [sequelize-cli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
9493 参照

node.js - Node/Express で Sequelize - 「そのようなテーブルはありません: main.User」エラー

Sequelize を使用して単純な Node/Express アプリを構築しようとしていますが、リレーショナル データベースに新しいレコードを作成しようとすると、エラーが発生しますUnhandled rejection SequelizeDatabaseError: SQLITE_ERROR: no such table: main.User。基本的に、Usersテーブルにユーザーを作成してから、テーブルに関連するアドレスを作成しようとしAddressesます-ユーザーは正常に作成されますが、アドレスの作成時にこのエラーで失敗します...mainテーブル名のどこからプレフィックスを取得していますか? (以下の完全なエラー読み出し)...

まず、私のプログラムの概要は次のとおりです...

  • Sequelize のバージョンはSequelize [Node: 6.8.1, CLI: 2.4.0, ORM: 3.29.0]で、Sequelize CLI コマンドを使用しsequelize initてプロジェクトのこの部分をセットアップしました。

  • 私はローカル開発にSQLite3を使用しconfig/config.jsonており、開発データベースを次のように定義しています

    /li>
  • 私のユーザー移行:

    /li>
  • およびアドレスの移行 (省略):

    /li>
  • ユーザーモデル:

    /li>
  • および住所モデル:

    /li>
  • 最後に、私のルートindex.js:

    /li>

そのため、に投稿しようとする/createUserと、ユーザーは正常に作成され、コンソールには新しいアドレスが作成されたINSERT INTO 'Addresses'...と表示されますが ( )、アドレスは作成されず、次のエラーがログに記録されます。

Unhandled rejection SequelizeDatabaseError: SQLITE_ERROR: no such table: main.User at Query.formatError (/Users/darrenklein/Desktop/Darren/NYCDA/WDI/projects/world_table/wt_test_app_1/node_modules/sequelize/lib/dialects/sqlite/query.js:348:14) at afterExecute (/Users/darrenklein/Desktop/Darren/NYCDA/WDI/projects/world_table/wt_test_app_1/node_modules/sequelize/lib/dialects/sqlite/query.js:112:29) at Statement.errBack (/Users/darrenklein/Desktop/Darren/NYCDA/WDI/projects/world_table/wt_test_app_1/node_modules/sqlite3/lib/sqlite3.js:16:21)

数か月前に Sequelize でこの種のことを行ったことがあり、成功しました。ここで何が欠けているのか、一生わかりません。アプリが を探しているのはなぜmain.Userですか? 正しいテーブルを探すにはどうすればよいですか? ありがとうございました!