Zend Form做修改页面

用Zend Form可以轻松生成表单,但是如果要做修改页面,比如修改个人信息,可以通过如下方式为每个元素赋值:

controller:

public function editAction()
    {
     $request = $this->getRequest();
     $form = new User_Form_BidAdd();
 
  if ($this->getRequest()->isPost() && $form->isValid($request->getPost()))
  {
   $_POST['user_id'] = Zend_Auth::getInstance()->getStorage()->read()->id;
   $_POST['addtime'] = time();
   $cls = new Db_Model_Bid($_POST);
   $cls->save();
  }
 
  $cls = new Db_Model_Bid();
  $bid = $cls->find($request->bid);
  $form->populate($bid->toArray());
 
     $this->view->form = $form;
    }

其中的$form->populate($bid->toArray());默认将数据库字段名称作为key,值作为value,给相应的form元素赋值,即可达到修改表单的效果,而不用自己一个一个去赋值。

posted @ 2014-01-28 10:56  狂热的猴子  阅读(191)  评论(0编辑  收藏  举报