私はRuby、Sinatra、およびDataMapperについては比較的新しいですが、DataMapper検証エラーについて質問があります。DataMapper検証エラーのソースプロパティを確認してください
私はあなたが以下のような何かを行うことによって、DataMapperの持つデータベースに新しい行を保存しようとしたときに発生したエラーを見ることができます知っている:
user = User.new username: 'bradleygriffith', password: 'not_my_password'
if user.save
#success!
else
user.errors.each do |error|
puts error
end
end
私が行うことができるようにしたいと思い、何が決定していますどのプロパティでエラーが発生したかを示します。この方法では、たとえば、登録フォームの該当するフィールドの隣にエラーメッセージを配置することができます。つまり、登録者が、無効なユーザー名の前にのエラーメッセージが表示されたので、ユーザー名フィールドにメッセージを置くことができることを知りたいと思います。
これは可能ですか?
Imが取得:「NoMethodErrorをat/join。未定義のメソッド 'attribute_name'は["Username is already taken"]:配列 " ですか? – bradleygriffith
hmm、配列にどのような種類のオブジェクトがあるかを見るには、これを 'puts error [0] .class.name'とします。文字列のように見えますが、私たちを騙しているかもしれません。あなたがこのことを理解してくれたら教えてください。 – jacobsimeon