-1

保存する前に値を検証してフィルタリングしたい.たとえば、大文字に変換したり、スペースを削除したり、アクセントを削除したり、電子メールアドレスが有効かどうかを確認したりしたい.

考え:

  1. Zend_Form を使用する: 検証とフィルター処理を行う唯一の方法がフォーム内にあるため、この考えは好きではありませんが、値が WebService や内部プロシージャーなどの別の場所から取得される場合、検証とフィルター処理は適用されません。
  2. コントローラーで Validate を使用する: これは解決策です。モデルに渡す前に、Params の配列を検証してフィルター処理します。
  3. モデルで検証を使用する: これは別の解決策です。

どう思いますか ?

4

1 に答える 1

0

個人的には、フォームを処理するクラスを作成しました。したがって、コントローラー内で次のように呼び出します。

$request     = $this->getRequest();
$fp          = new FormProcessor($this->db);

if ($request->isPost()) 
                $fp->process($request);   

プロセス メソッドは次のようにジョブを実行します。

public function process(Zend_Controller_Request_Abstract $request)
{       
       $this->title = $request->getPost('title');
}

それがあなたを助けることを願っています。

于 2013-05-22T17:29:39.987 に答える