skillup

技術ブログ

プログラミング全般

フォームの処理について

投稿日:

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

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

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

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

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

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

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

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

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

 

-プログラミング全般

執筆者:


comment

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

関連記事

no image

コレクションの頻出処理に関して

PHPでコレクションを使っていますが、慣れると本当に便利ですね・・・まあforeachとかでグリグリやってもいいのですが、無駄にコードが長くなります。 自分がコレクションでよく使う再頻出のメソッドなど …

no image

画面テストのツールに関して

Unitテストに関してはxUnit一択だと思いますが、UI系のテストツールについて。 IDE(コードを書かずにすむマクロ系)に関して全てChromeで動くことを確認しています。 Contents1 ツ …

no image

ダミーデータの作り方 まとめ

現在作っているアプリを顧客先で見せる機会があり、そのためダミーデータを入れる、という仕事がありました。 といっても画面からポチポチやったんでは時間もかかりますし、何より精神的にやられてしまいます。(汗 …

no image

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

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

no image

ファジープロジェクト対策 その1

5月ぐらいから着手していたプロジェクト(顧客管理ソフト)が終焉を迎え、検証段階に入ったので、記して置きたいことなど。 数ヶ月程度ですが、自分が携わったプロジェクトの中では過去最大クラスのものでした。 …