モデルに問題があります。私は2つのフォーム(2人が別々のデータを入力する必要があるため)によって更新されるモデルを持っています。フォーム1には、必要なデータの前半が含まれているため、そこでデータを検証する必要があります。1つのモデルの個別のフォームのパラメータを検証します
フォーム1で入力したデータのみを検証する方法を見つけるのが難しいです。私のサブスクリプション.rbモデルファイルがあります。
class Subscription < ActiveRecord::Base
# werkgever form
if form_id == 'form1'
validates :email, presence: true
end
# werknemer form
if form_id == 'form2'
validates :name, presence: true
validates :city presence: true
end
end
文は私が更新し、その逆のときのForm2上のエラーを取得いけないように、そのフォームにbeloging値のみが検証されるようになるだろう、何かが含まれている場合、私は必要です。
これは十分明確です。どんな助けもありがとうございます。おかげさまで
1と2を区別するにはどうすればよいですか?私は、これらのフォームを「フォームオブジェクト」(https://robots.thoughtbot.com/activemodel-form-objects)で別々のフォームに分けることが、この状況では最も理想的だと思います。 –
これは関連する質問ですhttp://stackoverflow.com/questions/24641143/rails-conditional-validation-in-modelモデルに仮想属性を自由に追加し、フォーム経由で非表示フィールドとして渡してください。 – taro