を使用してvalidates_presence_of対の存在は、私はそうのように関連している単純なモデルのカップルを持っている:は検証:レール3
MODELS
class Task < ActiveRecord::Base
belongs_to :user
validates :name, :presence => true, :message => 'Name cannot be blank, Task not saved'
end
class User < ActiveRecord::Base
has_many :tasks
end
VIEWはそうのようなそれで呼び出しています user.tasks
<を - タスクを通して、私ループ
問題:タスクモデルで
から
私が使用:
validates :name, :presence => true , :message => 'Name cannot be blank, Task not saved'
私は500エラーを取得する:
ActionView::Template::Error (uninitialized constant User::Task):
NameError in View file
私が使用している場合:
validates_presence_of :name
すべてが動作します。
上記の両方のバリデーション方法は、同じ問題がアソシエーションと関連しており、検証が関連するモデルとどのように関係しているかと考えました。私は物事が関連付けられている方法で何かが起こっていることを知っているが、それはちょうど馬鹿です。
ご協力いただければ幸いです。ありがとうございました。
ありがとうございました!それはトリックでした! – RidingRails
私はこれに関する国際化について質問します。 Railsがフィールド名を提供する場合、このエラーメッセージはどのように完全にローカライズされますか?たとえば、スペイン語では、「名前」は「nombre」である必要があります。デフォルトのメッセージを完全に抑制する方法はありますか? – jn29098
これは古い投稿ですが、このエラーメッセージはどこに表示されるべきですか?フォームを送信した後などに表示されますか?ありがとうございました – Richlewis