Ich versuche, eine Validierungsregel in meine Anfrage zu setzen, so dass names
eindeutig years
in Laravel 5.2
sein wird.Laravel Validation Eindeutige Werte in der Spalte für eine andere
Bisher habe ich dies für die Anfrage:
<?php
namespace App\Http\Requests;
use Auth;
use App\Http\Requests\Request;
class AwardeeRequest extends Request
{
public function rules()
{
return [
'name'=>'required',
'year'=>'required',
];
}
}
Und mein Controller:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Awardee;
use App\Http\Requests;
class AwardeeController extends Controller
{
.
.
public function store(Requests\AwardeeRequest $request)
{
$this->validate($request, [
'name' => 'unique:awardee,name,NULL,year,year,' .$request->get('year'),
]);
return redirect(route('awardees.index'));
}
public function update(Requests\AwardeeRequest $request, $id)
{
$awardee = Awardee::findOrFail($id);
$this->validate($request, [
'name' => 'unique:awardee,name,NULL,year,year,' .$request->get('year').',id,id,'.$awardee->id,
]);
$awardee->fill($request->all())->save();
return redirect(route('awardees.index'));
}
}
Ich habe versucht, was hier vorgeschlagen wurde: Laravel 4: Unique Validation for Multiple Columns aber es funktioniert nicht, wenn ich das Jahr aktualisieren.