2016-11-11 43 views
0

我想學習laravel。 現在我有一個表單工作。我可以創建並更新數據。Laravel獨特的名字,但如果ID是相同的

但我有一個特例。我正在添加名稱的數據。 我只想使用這個名字一次。因此,我正在使用獨特的功能。 這是工作正常,當我創造新的東西。但是,當我更新數據,我不改變名稱,它給我一個錯誤,因爲名稱存在(但它是相同的條目)。

所以,現在,我想驗證名稱是否被採用,但如果id是相同的,所以可以更新。

我該怎麼做laravel?

回答

3

如文檔中所述,您可以使用Illuminate\Validation\Rule類創建規則對象,以便與其他規則一起使用。所述Rule對象具有一個ignore()方法:

use Illuminate\Validation\Rule; 

Validator::make($data, [ 
    'email' => [ 
     'required', 
     Rule::unique('users')->ignore($user->id), 
    ], 
]); 

見 「強制一個獨特的規則要忽略給定的ID」:

https://laravel.com/docs/master/validation#rule-unique

相關問題