activerecord - Yii2 Active Record 类 load() 或 save() 不更新数据

标签 activerecord yii2

以下是 Controller 代码,似乎通过 if 语句工作,但数据库中的数据没有更新。

public function actionUpdate($id)
{
    $model = $this->findModel($id);

    if ($_model = Yii::$app->request->post() && $model->save()) {
        return $this->redirect(['view', 'id' => $model->id]);
    } else {
        return $this->render('update', [
            'model' => $model,
        ]);
    }
}

我怀疑问题在于它是用户 CRUD 代码的一部分,并且表单仅更新少数字段(不包括密码、authKey 等)。

请帮忙。

谢谢

最佳答案

更改您的代码

if ($_model = Yii::$app->request->post() && $model->save()) {

致:

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

关于activerecord - Yii2 Active Record 类 load() 或 save() 不更新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26837152/

相关文章:

javascript - yii2 kartik 开关输入类型单选按钮在 javascript 中获取值

php - Yii2首选方式设置 'class'

php - Yii2.0 如何通过 POST API 上传文件到服务器?

php - 在 codeigniter 中使用 php 和 mysql 防止重复输入

ruby-on-rails - rails : How do self-referential has_many models work?

mysql - Yii2 在一侧添加带有 "%"通配符的 LIKE 条件

Yii2 嵌套 pjax

ruby-on-rails - Rspec 期望方法接收 ActiveRecord::Relation

ruby-on-rails - 如果你使用belongs_to 没有相应的has_one 会发生什么?

mysql - 用于连接 has_and_belongs_to_many 关系的 ActiveRecord 查询