Skip to content

Instantly share code, notes, and snippets.

@ldiebold
Created June 5, 2019 10:11
Show Gist options
  • Save ldiebold/590749218a226ef5ca892c8dc8ab972b to your computer and use it in GitHub Desktop.
Save ldiebold/590749218a226ef5ca892c8dc8ab972b to your computer and use it in GitHub Desktop.
Laravel flexible request
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class ProjectBillRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
if($this->isMethod('post')) {
return [
"description" => "required|min:10",
"status" => "required|min:3"
];
}
return [
"description" => "min:10",
"status" => "min:3"
];
}
}
@AliN11
Copy link

AliN11 commented Jun 8, 2019

There is a more simplified version:

public function rules()
{
    $required = $this->method() == 'post' ? 'required|' : '';

    return [
        "description" => $required . "min:10",
        "status" =>  $required . "min:3"
    ];
}

@ldiebold
Copy link
Author

Interesting.
There's less code, yet I'm not sure that it's simpler (at least for me).
takes a little longer to grock.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment