edit_profilesページの検証ルールを保持するモデルが1つあります。私はjqueryアコーディオンを使用してユーザーのedit_profileを異なるセクションに分割し、ユーザーが情報を編集できるようにしています。各セクションは別々のフォームです。Ruby on railsはユーザプロファイルの検証を必要とします
基本情報私について(フォーム1) 個人統計(フォーム2) の好きなもの(形式3) (形式4)
私の問題が正常に一つの形に関する情報を記入し、更新をクリックしているが失敗しました
私はvalidation_groupの宝石を使用しようとしましたが、これは何の影響もないように思われます。なぜなら、他のフォームはまだ検証されていないからです。 これを行う簡単な方法があるかどうかを知りたいですか?
フォームごとにバリデーションルールをまとめて別々のメソッドに入れて、一致するフォームの更新ボタンをクリックしたときにのみ有効にすることはできませんか?
フォーム1の更新ボタンをクリックすると、form_one_validationsメソッドが起動しなくなり、関連のない検証メソッドが起動しなくなります。
私は本当にこれを行う方法の例を感謝します。
def edit_profile
@profile = Profile.find_by_user_id(current_user.id)
end
それは私のプロフィールコントローラ内部で基づいています。
これは、y edit_profileビューを担当するアクションです。あなたは、あなたのモデルにユーザーが対応するすべての情報を埋めた後、一度設定される「basic_info_completed」のようなものを追加フィールドを追加することができます。
種類は、私はあなたに、このようなアプローチを提案することができます
私はいつもdbを実際に保護したかったのです。それは私のdbがそれを保護するバリデーションの形式を持たない攻撃に対してよりオープンであることを意味しないでしょうか? – LondonGuy
この場合、フィールドの状態は2つしかないと仮定します。グループのすべてのフィールドが空(null)で、グループのすべてのフィールドが設定(有効)です。 –