私は間違いなくそうすべき ケースで100%乗っています、クライアント側とサーバー側の両方のデータ検証使用するます。
しかし、私が働いてきたフレームワークと環境では、私が見たアプローチは決して乾いたことはありませんでした。ほとんどの場合、計画やパターンはありません。検証はモデルの仕様に記述され、検証はビューのフォームに記述されます。(注:私の実際の経験のほとんどは、Rails、Sinatra、およびjQueryを使用したPHPに関するものです)
それを熟考すると、検証のセット(モデル名、フィールド、条件など)が与えられると、必要なクライアント側とサーバー側の両方のマテリアルを生成できるジェネレーターを作成することは難しくないようです。あるいは、そのようなツールはサーバー側の検証(たとえば、validates
ActiveRecordモデルのコード取得し、クライアント側の検証(フォームに適用されるjQueryプラグインなど)を生成できます。
明らかに、上記は単なる「このアイデアを思いついた」という考えであり、正式な提案ではありません。この種のことは、アイデアが思いついたときよりも確かに難しいです。
それで、データ検証のための「1回だけ書き込み、サーバーとクライアントで実行する」技術の設計にどのようにアプローチしますか?
関連サブトピック:特定のフレームワークまたはクライアント/サーバーテクノロジーには、そのようなツールが存在しますか?1セットの検証のみを維持しようとする場合の大きな落とし穴や課題は何ですか?