DB に保存する前に、Web アプリのいくつかのコントローラーで受信データを検証する必要があります ( DBIx::Class
)。基本的に、コールバック (匿名サブ) を使用して各列の値を検証する必要があります。Params::Validate
最初は各コントローラーで使用することを考えました。しかし、このアプローチには 2 つの問題があります。
で検証エラーを処理する簡単な方法はありません
Params::Validate
。最初の無効なパラメーターでエラー文字列が発生するだけです。すべてのコントローラーのすべての列に対して検証ロジックを複製する必要があり、これは DRY の原則に違反しています。
最良の方法は、検証ロジックをモデルの一部にすることだと思います。でこれを行うための好ましい方法は何DBIx::Class
ですか?