我有一个用于管理服务的表格,其中 service-url 是唯一的值。当我使用数据库中已经存在的service_url添加新服务时,它将返回SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry
。
我想做的是修改我的代码,以返回具有服务网址的视图!。我该怎么办?
商店服务功能:
public function store(Request $request)
{
$request->validate([
'service_url'=>'required',
'client'=>'required',
'service'=>'required',
'domain_provider'=>'required',
'domain_expiry'=>'required',
'hosting_provider'=> 'required',
'hosting_expiry' => 'required'
]);
$share = new Service([
'service_url' => $request->get('service_url'),
'client' => $request->get('client'),
'service' => $request->get('service'),
'domain_provider' => $request->get('domain_provider'),
'domain_expiry' => $request->get('domain_expiry'),
'hosting_provider' => $request->get('hosting_provider'),
'hosting_expiry' => $request->get('hosting_expiry')
]);
$share->save();
return redirect('/shares')->with('success', 'Service has been added');
}
我是Laravel的新手,我们将不胜感激:)
答案 0 :(得分:0)
在验证中添加以下规则,它将检查services
表中service_url
列的唯一性。
'service_url'=>'required|unique:services',
希望您能理解
您可以看到laravel官方文档https://laravel.com/docs/5.7/validation#rule-unique