2012-04-24 6 views
0

かなり複雑な検証要件があるRailsプロジェクトに取り組んでいます。このプロジェクトは状態報告システムへのアップロードのためのデータを出力するので、状態にアップロードしようとする前に私のシステムで検証の問題を起こしたいと思います。Rails:多くのフィールド間カスタムバリデーターのベストプラクティス?

  • フィールドBが設定されている場合、フィールドAは空白でなければならず、フィールドAが設定されている場合はフィールドBは空白でなければなりません。
  • フィールドDが0、6、または9の場合、フィールドCは0にする必要があります。
  • フィールドFに値がなければなりません。
  • など

それは、各ビジネスルールのモデル、またはカスタムバリデータクラスのカスタム検証、1つのカスタムバリデータクラスのモデルのメソッドを使用することをお勧めしますか?

答えて

0

カスタム検証ロジックを再利用できるのであれば、それらを単一のCustomValidatorモジュールに入れて、それらを使用する必要のあるクラスに混ぜることをお勧めします。

したがって、モデルは検証ルールを記述する正しい場所です。どんなヘルパーを使ってもDRYすることができます。

関連する問題