我一直在試圖找出這個問題,並且從這裏和Laracast處理過每一個帖子,但是都是這樣。Laravel 5.2獨特的驗證總是在更新時失效
我已經完成了這個工作,它的工作,但我不知道爲什麼它不現在。
,基本建立在你的形式請求的規則應遵循以下格式:
<?php
class MyFormRequest extends Request{
public function rules(){
return [
'field' => 'required|unique:table_name:field,' . $this->input('field');
];
}
}
這對我來說應該工作,但根據我目前的經驗沒有。我試圖通過檢查傳入的請求方法來分離規則,並根據請求是更新還是創建來分配規則。
我不應該滿足這個要求嗎?重新使用我的FormRequest的最好方法是什麼,但確保我能夠驗證儘可能多的表字段的唯一性,而不管它們的數據類型如何,因爲我感覺到這可能與Laravel看起來有關要在正在驗證的字段上進行聚合,並且如果它不是整數,則它將繼續顯示錯誤消息。
解決這個問題的另一種可能的方法是如果我對我有興趣驗證的字段實現自己的驗證方法。我會如何去做這件事?
嗨伊斯蘭教我已經做了有什麼建議樓上,但它給了我下面的錯誤:SQLSTATE [42S02]:基表或視圖未找到:1146表「theonesystem.company_groups:代碼」不存在( SQL:select count(*)as'company_groups:code'中的集合,其中'TEST VALUEL' =「TEST VALUE」和'id' <> id) – Maximum86
似乎這個規則不適用於除整數之外的其他字段類型以及那些你可以實際聚合的東西。如果我錯了,請告訴我 – Maximum86
不,我不這麼認爲。因爲這裏的問題是在數據庫中找不到表名,所以請確保該表與您現在正在連接的數據庫處於同一個數據庫中,並通過從該表中獲取修補程序或其他內容中的任何數據來對其進行測試。 –