Sử dụng Zend_Form, làm thế nào tôi sẽ tạo ra các yếu tố hình thức như thế này:Zend_Form - Các yếu tố dựa trên mảng?
<input type="text" name="element[1]" value="" />
<input type="text" name="element[2]" value="" />
// etc...
Sử dụng Zend_Form, làm thế nào tôi sẽ tạo ra các yếu tố hình thức như thế này:Zend_Form - Các yếu tố dựa trên mảng?
<input type="text" name="element[1]" value="" />
<input type="text" name="element[2]" value="" />
// etc...
Bạn có thể sử dụng subforms:
$form = new Zend_Form();
$subForm = new Zend_Form_SubForm();
$subForm->addElement('Text', '1')
->addElement('Text', '2');
$form->addSubForm($subForm, 'element');
Hoặc bạn cũng có thể sử dụng setBelongsTo()
trên các yếu tố hình thức (chưa được kiểm tra) :
$form = new Zend_Form();
$form->addElement('Text', '1', array('belongsTo' => 'element'))
->addElement('Text', '2', array('belongsTo' => 'element'));
Tôi cho rằng setBelongsTo
có chất lượng kém, vì không thể đặt giá trị mặc định. Và như vậy, tại thời điểm hiện tại, không có cách nào hợp lý để đạt được mục tiêu của bạn.
Thứ hai, biểu mẫu có vẻ sạch hơn và dễ hiểu hơn và hoạt động ok (được kiểm tra). –
Nếu có bất kỳ ai gặp vấn đề về xác nhận, getValue() v.v. - hãy xem thẻ * giải quyết * này trên bộ theo dõi ZF: http://framework.zend.com/issues/browse/ZF-2563 –
Tôi muốn đi với các biểu mẫu con, Thuộc tính đã gây ra cho tôi tất cả các loại đau buồn, bởi vì tôi muốn sử dụng các tập hợp các trường tổng hợp lặp lại (ví dụ: các trường địa chỉ đường phố và bưu điện mà tôi muốn chia sẻ các trường con được đặt tên giống nhau). Chỉ sử dụng thuộc tính cho cơ bản nhất của nhóm trường, nếu không đi với subforms và tiết kiệm cho mình những rắc rối. – starmonkey