0

私はかなり複雑な検証要件を持つ Rails プロジェクトに取り組んでいます。このプロジェクトは、州報告システムにアップロードするデータを出力するため、州にアップロードする前にシステムで検証の問題を発生させたいと考えています。検証の例を次に示します。

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

モデル内でカスタム検証用のメソッドを使用するのがベスト プラクティスですか?それとも、モデル用に 1 つのカスタム バリデーター クラスを使用するのですか?それともビジネス ルールごとにカスタム バリデーター クラスを使用するのですか?

4

1 に答える 1

0

再利用可能なカスタム検証ロジックがある場合は、それらを単一の CustomValidator モジュールに配置し、それらを使用する必要があるクラスに混在させるのがおそらく最善です。

したがって、答えは、モデルは検証規則を記述する正しい場所であるということです。DRYにするためにできるヘルパーを使用してください。

于 2012-04-24T21:26:34.220 に答える