skillup

技術ブログ

プログラミング全般

フォームの処理について

投稿日:

本日はフォームの処理に関して。主に一覧検索画面のフォームについてです。

フレームワークでフォームの処理をする場合、変数の初期値やバリデーションなどをあらかじめ読み込むオブジェクトを設定しておき、変数が増えても設定箇所のみを増やして、コード自体はそれほど変化しないのが正しいコードです。

その場合、フォームのクラスでは

  • 各変数のプロパティ
  • 長さ
  • エラーチェック
  • 初期値

等をもっておくとよいでしょう。プログラムによっては和名(ラベルに相当するもの)を持っていることもありますね。

また並行してプルダウンの値などはDBや設定ファイルから配列で取り出しましょう。

POSTがあったときはコントローラー側では大まかにわけると下記のような処理になります。

  1. どの処理かをわける(画面にボタンが複数ある場合)
  2. フォームのクラスからSQLを作成し、DBからデータを取り出す
  3. ページャー情報がある場合は開始と終了を決定する

ECCUBEなんかは上記の構造が比較的きれいに書かれており、私は仕事始めの時に結構助けられました。

 

-プログラミング全般

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

フレームワーク作成時の注意ポイント

以前も多分書いていますが、フレームワーク作成時のポイントなどを列挙。 次元が違うものも多々含まれているかも。 ルーティング機能 基本設定情報の読み込み キャッシュ機能 データベース Form情報の管理 …

no image

オブジェクト指向 クラスの設計と業務ロジックの整理

本日も引き続き「現場で役立つシステム設計の原則」を読み進めてます。 本日は主にクラスの作り方について。 Contents1 クラス設計と業務ロジック1.1 要点1.2 感想 クラス設計と業務ロジック …

no image

オブジェクト指向について その3

今回は場合分けによる変更コストとオブジェクト指向のメリットについてです。 例えば給付金が発生して、その金額を死亡時、退職時、通常時で場合分けするとき、if-elseで書けば下記のようになります。 [c …

no image

リーダブルコードまとめ

リーダブルコードほぼ読み切ったのでまとめを。チェックリスト化して、常にこれを見ながらコードは書いたほうがよさげ 前半のまとめや参考リンクでみたものとマージします。 Contents1 変数の名称2 コ …

no image

ポート解放

新サーバー構築をしていたときにwebサーバーとしてnginxを立てましたが、外部から接続ができません。 500エラーすら吐かれず、ログも残っていません。 こんな時はホスト自体にアクセスが届いていない可 …