2017-10-07 62 views
0

我使用此功能將數據插入表格形式:更新重複probem在控制器

控制器:

public function store(request $request) 
    { 
     $this->validate($request, [ 
     'email' => 'required|unique:users|email', 
     'mobile' => 'nullable|unique:users', 
     ]); 
     User::create($request->all()); 
     return redirect(route('users')); 
} 

用於更新我用這個:

public function update(Request $request, User $user) 
{ 
     $this->validate($request, [ 
     'email' => 'required|unique:users|email', 
     'mobile' => 'nullable|unique:users', 
     ]); 
     $user->update($request->all()); 
     return redirect(route('users')); 
} 

我有一個問題。我無法保存(更新)編輯後的表格。

,因爲它返回一個錯誤:

1062 Duplicate entry for email and mobile

在編輯的形式,也許我不會改變電子郵件......所以我要保存而不改變當前的電子郵件形式...

我怎樣才能管理它?

+0

在你更新功能,您可以返回$請求;在更新函數之前,讓我們看看你的要求是什麼 – zuif

回答

0

忽略記錄您所比較:

'email' => 'required|unique:users,email,'.$user->id.'|email', 
'mobile' => 'nullable|unique:users,mobile,'.$user->id