Rails 3 アプリでいくつかのフォーム ビューを作成していますが、フロント エンドとバックエンドで DRY の方法でフォームを検証するために他の人が何をしているのか疑問に思っています。
もちろん、Rails バリデーションなしでバックエンドでのバリデーションを回避する方法はないようです。それを知っていると、フロントエンドで同じバリデーションを書くことはあまり DRY ではないようです。2 か所でバリデーションを書くことについての他のスレッドを読んだことがありますが、それを行う本当に正当な理由がない限り、私はむしろそうしたくありません。
レールの魔法を知っていれば、フロントエンドとバックエンドの両方を DRY で検証するシンプルで簡単な方法があるかもしれませんが、私はまだそれを発見していません。おそらく検証の宝石ですか?
したがって、User モデルでバリデータ メソッドを呼び出すフロント エンドで ajax を使用するとよいと考えています。たとえば、クライアント エンドのユーザー名フィールドは、jquery キーの押下をリッスンし、フィールドの内容を「checkuser」(またはそのようなもの) というユーザー コントローラー メソッドに送信します。モデルごとに 5 つ以上のフィールドがあることを考えると、コントローラーに多くの余分なフィールド チェック メソッドが必要になる可能性があります...あまりにも醜いですか?
このようにすることについて知っておくべき注意事項はありますか?JavaScript を無効にしているユーザーについて本当に心配する必要がありますか?