在yii中创建嵌套表单

时间:2014-04-03 15:46:37

标签: yii formbuilder yii-cformmodel yii-cform

关注this link我正在尝试创建一个注册表单并将表单连接到表格" user"和"个人资料"。在我的控制器中,我复制了如下相同的代码:

public function actionRegistration()
{
    $form = new CForm('application.views.user.registerForm');
    $form['user']->model = new Users;
    $form['profile']->model = new Profile;
    if($form->submitted('register') && $form->validate())
    {
        $user = $form['user']->model;
        $profile = $form['profile']->model;
        if($user->save(false))
        {
            $profile->userID = $user->id;
            $profile->save(false);
            $this->redirect(array('/user/login'));
        }
    }

    var_dump($form->submitted('register'));


    $this->render('registration', array('form'=>$form));
}

我实际上并不知道$ form->提交的内容('注册')以及为什么它返回false!

任何人都可以解释一下这是什么,以及什么是注册'传递给提交函数的值!?也就是为什么它在发布表单时应该返回false?

1 个答案:

答案 0 :(得分:1)

获取表单数据的传统方式是

$model = new User;
if(isset($_POST["register"])){    //get the form data
  ...
  $model->attributes=$_POST["register"];  //set model's attributes
 ...
}

您可以访问更多示例:http://www.yiiframework.com/doc/blog/1.1/en/comment.create