1

我在模型中添加了三个新字段(年、月、日)。当我提交表单数据时不会被填充。所有这三个自定义属性在提交时都为空。

在为单个属性实现多个字段之前,我已经问过这个问题,我按照答案的建议做了。我应该怎么办。这是我的代码。

用户型号:

class User extends CActiveRecord
{
    public $month;
    public $year;
    public $day;
    ...

查看文件:

<?php echo $form->labelEx($model, "dob"); ?>
<?php echo $form->dropDownList($model, 'year', $model->getDobOptions('year')); ?>
<?php echo $form->dropDownList($model, 'month', $model->getDobOptions('month')); ?>
<?php echo $form->dropDownList($model, 'day', $model->getDobOptions('day')); ?>
4

1 回答 1

3

您还记得将这些字段也设置为安全吗?

public function rules() {
    return array(
        array('month, year, day', 'safe'),
    ...

如果不这样做,这不会将值从表单“复制”到控制器中的模型:

$model->attributes = $_GET['User'];
于 2013-08-20T09:46:17.230 回答