我有一个PHP表单需要提交一组数字,我们在视图中看到了什么:
<input type="text" id="ProductForm_sizeobj_1" name="ProductForm[sizeobj[1]]" value="13">
<input type="text" id="ProductForm_sizeobj_2" name="ProductForm[sizeobj[2]]" value="13">
<input type="text" id="ProductForm_sizeobj_3" name="ProductForm[sizeobj[3]]" value="13">
我在表单类中定义:
public $sizeobj = array();
public function rules() {
return array(
array('/** other attributes **/, sizeobj', 'safe')
);
}
由于“Sizeobj”是动态属性,并且大小将增长超过3,因此我使用数组。但是在表单提交之后,错误抛出如下:
Failed to set unsafe attribute "sizeobj[1" of "ProductForm".
我相信我可能会使用错误的方法来设置数组属性,或错误的规则,任何建议?我是Yii的新手,感谢任何帮助。
答案 0 :(得分:2)
使用name="ProductForm[sizeobj][1]"
代替name="ProductForm[sizeobj[1]]"