谁一开始就是大神?

Yii::$app->request->post()的问题[2.0]

<form action="index.php?r=model" method="post">
    Name:<input name="name"><br>
    ID:<input name="id"><br>
    Sex:<input name="sex"><br>
    Age:<input name="age"><br>
    <input type="submit" value="submit">
</form>

表单视图是这样的

public function actionIndex(){
    $student = new Student();

    if($student->load(Yii::$app->request->post())){
        return $this->render('student_info',['student'=>$student]);
    }else{
        return $this->render('student');
    }
}

控制器里面是这样的。为什么load返回的是false,属性名和表单名是相同的

load方法会读取键为类名的数组,并绑定到AR对象,所以你的表单name应该这样写:
你也可以使用yii自带的wiget,或者yii\helpers\Html下的active系列方法生成表单。
表单文本框name不对, 应该是Student[name] Student[sex] 这样才可以
用yii提供的方法建立表单
他们都说了你表单错了,确实也错了。但你还可以修改load的参数来实现
Yii::$app->request->post 他这个方法,会自动都model的rule验证嘛?
自定义表单,第二个参数为空,要加上
$student->load(Yii::$app->request->post(), ”)

赞(0) 打赏
未经允许不得转载:菜鸟之家 » Yii::$app->request->post()的问题[2.0]

评论 抢沙发

登录

找回密码

注册