[解決済み] 処理されない拒絶反応 SequelizeUniqueConstraintError: バリデーションエラー
2022-02-17 04:20:48
質問
このようなエラーが発生するのですが。
Unhandled rejection SequelizeUniqueConstraintError: Validation error
どうすれば直るのでしょうか?
これは私のmodels/user.jsです。
"use strict";
module.exports = function(sequelize, DataTypes) {
var User = sequelize.define("User", {
id: { type: DataTypes.INTEGER, autoIncrement: true, primaryKey: true},
name: DataTypes.STRING,
environment_hash: DataTypes.STRING
}, {
tableName: 'users',
underscored: false,
timestamps: false
}
);
return User;
};
そして、これが私のroutes.jsです。
app.post('/signup', function(request, response){
console.log(request.body.email);
console.log(request.body.password);
User
.find({ where: { name: request.body.email } })
.then(function(err, user) {
if (!user) {
console.log('No user has been found.');
User.create({ name: request.body.email }).then(function(user) {
// you can now access the newly created task via the variable task
console.log('success');
});
}
});
});
解決方法は?
の呼び出しは
User.create()
が返されます。
Promise.reject()
は存在しないが
.catch(err)
を処理することができます。エラーを捕捉し、入力値を知ることができなければ、バリデーションエラーが何であるかを言うことは困難です。
request.body.email
が長すぎるなどの可能性があります。
Promiseのrejectをキャッチして、エラー/バリデーションの詳細を確認する
User.create({ name: request.body.email })
.then(function(user) {
// you can now access the newly created user
console.log('success', user.toJSON());
})
.catch(function(err) {
// print the error details
console.log(err, request.body.email);
});
2019年になり、async/awaitが使えるようになったので更新
try {
const user = await User.create({ name: request.body.email });
// you can now access the newly created user
console.log('success', user.toJSON());
} catch (err) {
// print the error details
console.log(err, request.body.email);
}
関連
-
[解決済み】JavaScriptのisset()に相当するもの
-
[解決済み】Uncaught ReferenceError。Firebase は定義されていません。
-
[解決済み】TypeError:res.jsonは関数ではありません。
-
[解決済み】HTMLの最初の行に予期しないトークン<がある。
-
[解決済み】MySQLのエラーコードです。MySQL WorkbenchでUPDATE中に1175のエラーが発生しました。
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] sudoを使わずにnpmがエラーを投げるのを修正する方法
-
[解決済み] Node.js/Windowsのエラーです。ENOENT, stat 'C:\Users﹑RTAppData﹑Roaming﹑npm'.
-
[解決済み] エラーが発生しました。クライアントに送信された後にヘッダーを設定できない
-
[解決済み] Node.jsで "Cannot find module "エラーを解決するにはどうしたらいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] jQueryで、ユーザーがそのフィールドを編集している間、テキストフィールドの最初の文字を大文字にするにはどうすればよいですか?
-
[解決済み】webpack-dev-serverにリモート接続すると、「Invalid Host header」というメッセージが表示されます。
-
[解決済み】jquery $.ajaxオブジェクトのresponseJSONプロパティを取得する方法 [重複]。
-
[解決済み】別のjsファイル内でJavaScriptの関数を呼び出す
-
[解決済み】エラー:リクエストのエンティティが大きすぎる
-
[解決済み】PhantomJS 2.1.1を使用してReactJSアプリケーションをレンダリングできない理由とは?
-
[解決済み】TypeError:res.jsonは関数ではありません。
-
[解決済み】Syntax error: JavaScriptの不正なreturnステートメント
-
[解決済み】Vueが定義されていない
-
[解決済み】postgresの自動インクリメントカウンターをリセットする。