Я хочу автоматически добавить префикс к моим элементам Zend_Form, чтобы мне было проще отображать их в моих моделях, когда я отправляю форму. Например, у меня есть одна форма с элементами, которые относятся к двум моделям.
Я создаю форму примерно так:
$this->setMethod('post');
$this->addElement('text', 'name', array(
'label' => 'Your Name',
'required' => true,
));
$this->addElement('text', 'tel', array(
'label' => 'Your Telephone',
'required' => true,
));
$this->addElement('text', 'email', array(
'label' => 'Your Email Address',
'required' => true,
'filters' => array('StringTrim','StringToLower'),
'validators' => array('EmailAddress'),
));
$this->addElement('password', 'password', array(
'label' => 'Your Password',
'required' => true,
));
$this->addElement('text', 'surgery_name', array(
'label' => 'Surgery Name',
'required' => true,
));
Проблема в том, что в поле «Имя хирургии» необходимо вручную ставить префикс хирургии_. В идеале я хотел бы установить префикс для первого набора полей (скажем, пользователя), а затем установить префикс для второго набора полей (скажем, хирургии).
Тогда мои имена элементов будут выглядеть примерно так:
User.Name
User.Email
User.Tel
Surgery.Name
и т.д.
Тогда, когда я приду, чтобы сопоставить их с моей моделью, должно быть легче определить, какие поля FORM отображать.