0
自定義錯誤消息不適用於自定義規則,請參閱變量$ messages uniqueTeamNameForcomp。Laravel(5.3.24+)驗證:自定義驗證與自定義錯誤消息
自定義規則很好,規則的自定義消息:所需的也很好。
當它應該讀取錯誤消息「This name already exists for this competition」時,針對規則uniqueTeamNameForComp顯示的錯誤消息是「unique_team_name_for_comp」。
控制器:
服務提供商:
public function boot()
{
Validator::extend('uniqueTeamNameForComp', function ($attribute, $value, $parameters, $validator) {
$competitionId = $parameters[0];
return count(Tteam::where("comp_id", "=", $competitionId)->whereName($value)->get()) == 0;
});
}
爲什麼不直接使用'獨特:tteams,名稱,NULL,ID,comp_id,'$請求 - > compzid'這將需要的姓名成爲一個comp_id等於'$請求記錄唯一的。 - > compzid'並忽略ID爲空的記錄(最後一部分僅僅是因爲[唯一驗證](https://laravel.com/docs/5.1/validation#rule-unique)的參數順序) – jfadich