更新查询显示laravel 4.2中的错误

更新查询显示laravel 4.2中的错误,laravel,laravel-4,Laravel,Laravel 4,在laravel 4.2版本中使用更新控制器时,它会显示错误页面,而不会更新行 public function updatelocation($data=NULL) { $GeneralData = array_filter(Input::except(array('_token'))); $validation = Validator::make($GeneralData, locationModel::$rules); if ($validation->passes())

在laravel 4.2版本中使用更新控制器时,它会显示错误页面,而不会更新行

public function updatelocation($data=NULL)
{

$GeneralData = array_filter(Input::except(array('_token')));
$validation  = Validator::make($GeneralData, locationModel::$rules);
if ($validation->passes()) 
    {
    $updatedata=array_filter($GeneralData);
    $editid=$data;
    //return ($data);
    $affectedRows = locationModel::where('LId', $editid)->update($updatedata);
    return Redirect::to('locations')->with('Message', 'Location Details Updated Succesfully');
    } else 
    {
        return Redirect::to('editlocation/'.$data)->withInput()->with('Message', 'Some Location Details are missing');
    }
}
$editid=$data; 这里您有一个错误,不幸的是您没有给它id,而是传递了整个数组。您需要从$data数组或对象传递id

`$editid=$data->id; or $editid=$data['id'];`
如果$data是id确认,请检查您的型号名称,它可能是首字母大写

删除where子句where'LId',$editid->put id以将其合并到

$updatedata数组

你可以这样做

$locationmodel = locationModel::find($editid);

$locationmodel ->fill($updatedata);

$locationmodel->update(); or $locationmodel->save();

你犯了什么错误?看起来好像出了什么问题。更改任何表单条目并更新时出错。如果我给出的值与数据库中的值相同,那么它就是finepost print_r$updatedata和您的表单