Yii - 无法为表单提交定义安全的属性数组

时间:2014-04-07 10:35:42

标签: php yii

我有一个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的新手,感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

使用name="ProductForm[sizeobj][1]"代替name="ProductForm[sizeobj[1]]"