Konum adlarını güncelleştirirken, yalnızca tek bir kimlik için değil, tablodaki birden çok satıra karşı denetlemek için doğrulamaya ihtiyacım var.Birden çok satıra karşı denetleme geçerlilik kuralı
Benim tablo şöyle görünür: beklendiği gibi yeni yerler oluşturma
+----+--------------+-----------+----------+
| id | name | lat | lng |
+----+--------------+-----------+----------+
| 1 | Location One | 53.348333 | 0.348333 |
| 2 | Location One | 57.348222 | 0.348222 |
| 3 | Location One | 57.348111 | 0.545454 |
| 4 | Location Two | 55.348554 | 0.555444 |
| 5 | Location Two | 56.348667 | 0.348333 |
| 6 | Location Two | 56.348778 | 0.111111 |
+----+--------------+-----------+----------+
çalışır. Ancak, güncellemeyi denediğim geçerli konumu hariç tutmak için doğrulama kuralını nasıl ayarlayacağımı bilmiyorum - 'ad' sütununa karşı kontrol edilmesi gerekiyor.
Böyle bir şeyin işe yarayacağını umuyordum - ama değil. Benim denetleyicisi olarak
public function rules()
{
return [
'name' => 'required|max:255|unique:evac_routes,name,'.$this->name,
...
];
}
ben çalışır Route::where('name', $route->name)->update
, kullanıyorum ama doğrulama kuralına bu mantık dönüştüremeyiz:
public function update($id, UpdateRouteRequest $request)
{
$route = Route::findOrFail($id);
$updateRows = Route::where('name', $route->name)->update([
'name' => $request->name,
...
]);
return redirect('routes');
}