私は単純なモデルを持っています - Ruby/MongoMapper アプリケーションで買い物をします。
エラー メッセージが 1 つしか表示されない場合と、次のようなエラー メッセージが 3 つ表示される場合がある理由がわかりません。
「検証に失敗しました: ユーザーは既に取得されています, ユーザーは既に取得されています, ユーザーは既に取得されています」
はい、意図的に同じ user_id を複数回追加しています。
これが私のコードです:
class Shop
include MongoMapper::Document
key :user_id, String, :required => true, :unique => true
def self.add
begin
ut = Shop.new
ut.user_id = '11'
ut.save!
ut = nil
rescue Exception => e
puts e.message
end
end
end
結果:
# 'Validation failed: User has already been taken, User has already been taken, User has already been taken'
アップデート:
を削除するようです
ut = nil
「問題」を修正します。しかし、なぜ...