andersao / andersao/l5-repository

How to use the validator correctly

Aperta
#562 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
PHP
Stelle
4.2k
Fork
880
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hello! How to use the validator correctly.
Generally we will use [Form Request Validation](https://laravel.com/docs/5.7/validation#form-request-validation) . but I see Validator Class .

```
public function store(ArticleCreateRequest $request)
{

try {

$this->validator->with($request->all())->passesOrFail(ValidatorInterface::RULE_CREATE);

$article = $this->repository->create($request->all());

$response = [
'message' => 'Article created.',
'data' => $article->toArray(),
];

if ($request->wantsJson()) {

return response()->json($response);
}

return redirect()->back()->with('message', $response['message']);
} catch (ValidatorException $e) {
if ($request->wantsJson()) {
return response()->json([
'error' => true,
'message' => $e->getMessageBag()
]);
}

return redirect()->back()->withErrors($e->getMessageBag())->withInput();
}
}

```

```
class ArticleValidator extends LaravelValidator
{
/**
* Validation Rules
*
* @var array
*/
protected $rules = [
ValidatorInterface::RULE_CREATE => [],
ValidatorInterface::RULE_UPDATE => [],
];
}
```

Using a Validator Class. `ArticleValidator`. This file `ArticleCreateRequest`.what is it used for?
Thank you!

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.