我创建了一个用于编辑删除和将用户添加到数据库的表单类。如果我想编辑用户,我怎样才能简单地将用户的信息提供给表单。
我使用Zend_Db_Table从数据库中获取数据。
这是userForm类:
class UsersForm extends Zend_Form
{
public function init ()
{
$username = new Zend_Form_Element_Text('username',array(
'validatrors' => array(
'alpha',
array('stringLength',5,10)
),
'filters' => array(
'StringToLower'
),
'required' => true,
'label' => 'Gebruikersnaam:'
));
$password = new Zend_Form_Element_Password('password', array(
'validators'=> array(
'Alnum',
array('StringLength', array(6,20))
),
'filters' => array('StringTrim'),
'required' => true,
'label' => 'Wachtwoord:'
));
$actif = new Zend_Form_Element_Checkbox('actif', array(
'label' => 'actif'));
$this->addElements(array($username,$password,$actif));
$this->setDecorators(array(
'FormElements',
array('HtmlTag', array('tag' => 'dl', 'class' => 'zend_form')),
array('Description',array('placement' => 'prepand')),
'Form'
));
}
}
谢谢,
Ivo Trompert
答案 0 :(得分:4)
这是通过以下方式完成的:
$form->populate($data);
其中$ data是一个包含table-row-data的数组,其中字段名称必须与表单中的名称相匹配。 Zend将完成剩下的工作。
答案 1 :(得分:0)
扩展Db_Table上的'fetchXXX'或'find'方法之一将返回一个Rowset,调用current()就会给你一个Row,它有一个toArray方法,它会给你tharkun的响应格式对