yii 2.0 ActiveRecord更新不';行不通

yii 2.0 ActiveRecord更新不';行不通,activerecord,yii2,updatemodel,Activerecord,Yii2,Updatemodel,我是Yii 2的乞丐。我正在使用activerecord尝试一个简单的用户更新,但是update()方法没有做任何事情。update()返回为“true”,始终为“success”,但DB记录没有更改 控制器: use app\models\Users; ..... $userId = 1; foreach ($array as $value) { $user = Users::findOne($userId); //$user->ramount = ($user->

我是Yii 2的乞丐。我正在使用activerecord尝试一个简单的用户更新,但是update()方法没有做任何事情。update()返回为“true”,始终为“success”,但DB记录没有更改

控制器:

use app\models\Users;

.....

$userId = 1;
foreach ($array as $value) {
   $user = Users::findOne($userId);
   //$user->ramount = ($user->ramount + $value->ramunt);
   $user->ramount = 22;
   if ($user->update() !== false) {
     echo "update successful";
   } else {
     echo "update failed";
   }

   //$user = Users::findOne($userId);
   //$user->updateCounters(['ramount' => 22]);
 }
我简化了更新,因为它不起作用。updateCounters()方法工作得很好,但我不想使用它

模型


apache日志中没有错误,yii运行时日志中没有错误。Thx您在模型类中定义的所有提示

class Users extends \yii\db\ActiveRecord
{
    public $id;
    public $email;
    public $username;
    public $ramount;
    ....
}
删除这些变量,因为它们覆盖ActiveRecord工作的属性

说:

注意:活动记录属性以关联的 以区分大小写的方式创建表列。Yii自动定义一个 关联表的每一列的活动记录中的属性。 不应重新声明任何属性


您已经在模型类中定义了

class Users extends \yii\db\ActiveRecord
{
    public $id;
    public $email;
    public $username;
    public $ramount;
    ....
}
删除这些变量,因为它们覆盖ActiveRecord工作的属性

说:

注意:活动记录属性以关联的 以区分大小写的方式创建表列。Yii自动定义一个 关联表的每一列的活动记录中的属性。 不应重新声明任何属性


您已经在模型类中定义了

class Users extends \yii\db\ActiveRecord
{
    public $id;
    public $email;
    public $username;
    public $ramount;
    ....
}
删除这些变量,因为它们覆盖ActiveRecord工作的属性

说:

注意:活动记录属性以关联的 以区分大小写的方式创建表列。Yii自动定义一个 关联表的每一列的活动记录中的属性。 不应重新声明任何属性


您已经在模型类中定义了

class Users extends \yii\db\ActiveRecord
{
    public $id;
    public $email;
    public $username;
    public $ramount;
    ....
}
删除这些变量,因为它们覆盖ActiveRecord工作的属性

说:

注意:活动记录属性以关联的 以区分大小写的方式创建表列。Yii自动定义一个 关联表的每一列的活动记录中的属性。 不应重新声明任何属性


排队搜索记录并设置新值:

$userId = 1;
$user = Users::findOne($userId);
$user->ramount = 22;
尝试使用
save()
方法:

if ($user->save()) {
  echo "update successful";
} else {
  echo "update failed";
}

PD:save method的返回值为布尔值(true或false)。

将搜索记录排队并设置新值:

$userId = 1;
$user = Users::findOne($userId);
$user->ramount = 22;
尝试使用
save()
方法:

if ($user->save()) {
  echo "update successful";
} else {
  echo "update failed";
}

PD:save method的返回值为布尔值(true或false)。

将搜索记录排队并设置新值:

$userId = 1;
$user = Users::findOne($userId);
$user->ramount = 22;
尝试使用
save()
方法:

if ($user->save()) {
  echo "update successful";
} else {
  echo "update failed";
}

PD:save method的返回值为布尔值(true或false)。

将搜索记录排队并设置新值:

$userId = 1;
$user = Users::findOne($userId);
$user->ramount = 22;
尝试使用
save()
方法:

if ($user->save()) {
  echo "update successful";
} else {
  echo "update failed";
}

PD:save方法的返回值是布尔值(true或false)。

您对更新记录使用的是相同的
$userid
,因此基本上是一次又一次地更新相同的记录。是的,但我希望如此。foreach将被赋予不同的值。我简化了更新,因为它不工作。如果工作一次,我会很快乐。但不更新任何记录。保持为“null”,保持为1。此外,您没有任何必填字段。您使用相同的
$userid
更新记录,因此基本上您正在一次又一次地更新同一记录。是的,但我希望如此。foreach将被赋予不同的值。我简化了更新,因为它不工作。如果工作一次,我会很快乐。但不更新任何记录。保持为“null”,保持为1。此外,您没有任何必填字段。您使用相同的
$userid
更新记录,因此基本上您正在一次又一次地更新同一记录。是的,但我希望如此。foreach将被赋予不同的值。我简化了更新,因为它不工作。如果工作一次,我会很快乐。但不更新任何记录。保持为“null”,保持为1。此外,您没有任何必填字段。您使用相同的
$userid
更新记录,因此基本上您正在一次又一次地更新同一记录。是的,但我希望如此。foreach将被赋予不同的值。我简化了更新,因为它不工作。如果工作一次,我会很快乐。但不更新任何记录。保持为“null”,保持为1。此外,您没有任何必填字段。