文字列、モデル、またはビューをエンコードするのは誰の責任ですか?
私はデータベースから文字列を取得しました。それはユーザーからのものです。データベースにできるだけ多くの情報を保持したいので、入力をそのまま保存しています。
文字列を表示するとき、ビューモデルにデータを入力するときに文字列をエンコードする必要がありますか、それともエンコードして表示するかどうかをビューが決定する必要がありますか?
ありがとう、
K
文字列、モデル、またはビューをエンコードするのは誰の責任ですか?
私はデータベースから文字列を取得しました。それはユーザーからのものです。データベースにできるだけ多くの情報を保持したいので、入力をそのまま保存しています。
文字列を表示するとき、ビューモデルにデータを入力するときに文字列をエンコードする必要がありますか、それともエンコードして表示するかどうかをビューが決定する必要がありますか?
ありがとう、
K
景色
2 つの違いは、モデルがそのデータを保持し、ビューが出力メディアに基づいてデータを表示する役割を果たしていることです。このデータを HTML 以外の媒体で送信したい場合、おそらく HTML でエンコードしたくないでしょう。
これは主に、ビューをどれだけきれいにしたいかに関係していると思います。ビュー側でエンコードすると、醜いスクリプトタグでビューを混乱させながら、コントローラーをデータ操作操作から解放しますが、コントローラー側でエンコードすると、よりクリーンな (よりデザイナーフレンドリーな) ビューが得られ、混乱する可能性があります。コントローラーのコード。
本当の問題は、バックエンド コードとビュー マークアップのどちらを混乱させるかということです。
一般的に言えば、コントローラーの動作を変更せずにコントローラーがさまざまな出力ストリームにモーフィングできるように、ベストプラクティスはあなたの見解にあると思います。