Skip to content

Instantly share code, notes, and snippets.

@harini-ua
Created October 17, 2018 12:57
Show Gist options
  • Save harini-ua/80e828150072698d982e03925b8f1cc3 to your computer and use it in GitHub Desktop.
Save harini-ua/80e828150072698d982e03925b8f1cc3 to your computer and use it in GitHub Desktop.
Get validation error messages in Lumen & Dingo API project
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Dingo\Api\Exception\ValidationHttpException;
use Laravel\Lumen\Routing\Controller as BaseController;
class Controller extends BaseController
{
/**
* Override validate method use dingo validation exception
*
* @param Request $request
* @param array $rules
* @param array $messages
* @param array $customAttributes
*/
public function validate(
Request $request,
array $rules,
array $messages = [],
array $customAttributes = [])
{
$validator = $this->getValidationFactory()->make(
$request->all(),
$rules, $messages,
$customAttributes
);
if ($validator->fails()) {
throw new ValidationHttpException(
$validator->errors()
);
}
}
}
<?php
use Illuminate\Http\Request;
class UserApiController extends Controller
{
use Helpers;
function login(Request $request)
{
// Validate request
$this->validate($request, [
'username' => 'required|min:3',
'password' => 'required|min:3'
]);
// ...
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment