Laravel 5.2,为 POST 方法设置验证,而不是 GET

Laravel 5.2,set validation for POST method, not for GET

我在学习Laravel 5.2。我正在尝试进行表单验证 example.Have 阅读文档进行验证,我的代码使用创建和存储方法使用验证请求 class 正在工作。现在我正在尝试以相同的方法同时执行 POSTGET。我已经创建了我的 request class,我的规则方法定义为这个

public function rules()
    {   
        if($this->method() == 'POST'){
            return [
                'first_name' => 'required'
            ];

        }else{
            return [];
        }
    }

我的控制器方法声明为

public function create(myRequest $request){
 //save and display the data
}

但是当我加载我的方法时,我得到一个空白页面,上面写着forbidden。我尝试为 GET 返回 null 值,但它不起作用。

    Argument 2 passed to Illuminate\Validation\Factory::make() 
must be of the type array, null given

不可能做这样的事情吗?

如果你在你的 myRequest 验证文件中看到,你会发现这个方法。

public function authorize()
{
    return false;
}

这是为了,只允许那些对此 section/post/comment 是真实的用户等。所以将其更改为

public function authorize()
{
    return true;
}

还有一件事供您参考,这不是使用 GET 方法传递验证请求对象的正确方法,它总是使用 POST/PUT/Delete 方法传递