为了账号安全,请及时绑定邮箱和手机立即绑定

表单返回错误请求:缺少必需参数:id

表单返回错误请求:缺少必需参数:id

PHP
慕姐4208626 2023-07-15 16:57:57
我是 yii2 的新手,我想使用 yii2 basic 制作注册表单,我使用 gii 生成的 mvc,但是当我提交注册时,它返回了错误的请求,但我输入的一些数据在数据库中,但有些数据是也失踪了。这是我的用户模型:我的 actionCreate 在用户控制器中 public function actionCreate()    {        $model = new User();        if ($model->load(Yii::$app->request->post()) && $model->save(false)) {            return $this->redirect(['view', 'id' => $model->id]);        }        return $this->render('create', [            'model' => $model,        ]);    }风景<?phpuse yii\helpers\Html;/* @var $this yii\web\View *//* @var $model app\models\User */$this->title = 'Create User';$this->params['breadcrumbs'][] = ['label' => 'Users', 'url' => ['index']];$this->params['breadcrumbs'][] = $this->title;?><div class="user-create">    <h1><?= Html::encode($this->title) ?></h1>    <?= $this->render('_form', [        'model' => $model,    ]) ?></div>我找不到我的代码哪里错了请帮助我
查看完整描述

1 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

save(false)方法不会验证您的数据!

这就是为什么某些数据可能不包含在数据库中的原因。


考虑以下:


1-您的方法的数据rules()必须与数据库匹配。(rules()在模型文件中)


2- 在行动中使用以下内容:


 if ($model->load(\Yii::$app->request->post()) && $model->save()){

    #Code ...

或者:


 if ($model->load(Yii::$app->request->post()) && $model->validate()){


    #Code ...

      if ($model->save(false)){

    #Code ...


查看完整回答
反对 回复 2023-07-15
  • 1 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信