首页 > 解决方案 > MySQL 没有正确更新

问题描述

我正在尝试更新用户的状态。代码工作正常。但它不能在数据库中更新

控制器.php

public function update_customer(Request $request)
    {
    
       $sid = 1;
       $setting['setting'] = Settings::editGeneral($sid);
       $site_max_image_size = $setting['setting']->site_max_image_size;
       $name = $request->input('name');
       $username = $request->input('username');
         $email = $request->input('email');
         $user_type = $request->input('user_type');
         $status =$request->input('status');
         
         
        $data = array('name' => $name, 'username' => $username, 'email' => $email, 'user_type' => $user_type, 'password' => $pass, 'earnings' => $earnings, 'user_photo' => $user_image,'status'=>$status, 'updated_at' => date('Y-m-d H:i:s'));
 
            
            
            Members::updateData($token, $data);
            return redirect($page_url)->with('success', 'Update successfully.');
          }
   }

模型.php

public static function updateData($token,$data){
    DB::table('users')
      ->where('user_token', $token)
      ->update($data);
  }


怎么解决??

标签: mysqllaravel

解决方案


您可以使用模型类而不是DB外观。如下所示:

用户.php

protected $fillable = [
    'name' , 'username' , 'email' , 'user_type' , 'password' , 'earnings' , 'user_photo' ,'status', 'updated_at'
];
    
public static function updateData($token,$data)
{
    User::where('user_token', $token)
            ->update($data);
}

推荐阅读