NodeJSとMySqlでSequelizeを使用しています。Sequelize FindOrCreateは、追加のユニークキーを持つモデルでSequelizeUniqueContraintErrorを返します。
- 'ID' とユニークなプライマリキー - (最新バージョン)
は私が持つユーザモデルを持っています。 'id'は自動インクリメントに設定されています。
- などのfirstName、lastNameの、電子メールなど一部のユーザの詳細
- 二つの追加のユニークなキー(sequelizeモデルで、データベースにユニークなとしてマーク) - 「ユーザー名」と「メール」
I 'findOrCreate'メソッドを使用して作成または参照しています。私のコードはレコードが存在しない場合は作成しますが、このレコードを見つけようとすると「UniqueConstraintError(ER_DUP_ENTRY) - > SequelizeUniqueContraintError」が「username」フィールドにスローされます。基本的に、findOrCreateはレコードを検索するのではなく、2回目のレコードを作成しようとします。
手動で検索を実行して見つけられない場合は、 を作成してこの問題を解決できました。しかし、私は 'findOrCreate'メソッドによって返されたフラグが必要です レコードが作成されたかどうかを判断するのに役立ちます。
誰かが助けてくれますか?
私はすでに次のリンクを参照しています。 (私の質問は重複していません)https://stackoverflow.com/questions/35248117/sequelize-findorcreate-giving-me-a-sequelizeuniqueconstrainterrorror-validation-er – codejunkie
これは同様の問題です - https://github.com/続ける/続ける/問題にする/ 5134 – codejunkie