Laravel自定义请求验证CameCase模型

时间:2016-10-11 22:58:39

标签: laravel

在rules()中的自定义GroupRequest中,我可以通过$ this-> group-> id获得Group的ID(模型名称)。

public function rules()
{
    if ($this->method() == 'PATCH') {
        return [
            'name' => 'required|min:2|max:255|unique:groups,name,'.$this->group->id,
        ];
    } else {
        return [
            'name' => 'required|min:2|max:255|unique:groups',
        ];
    }
}

我怎样才能在自定义ArticleCategoryRequest中使用rules(),但是使用ArticleCategory的id(这是模型名称)......

$ this-> articlecategory-> id for not work。

1 个答案:

答案 0 :(得分:1)

这取决于您使用的路线变量。

如果你宣布你的路线是这样的:

<dotNetOpenAuth>
<messaging relaxSslRequirements="true"/>

您应该可以在Route::patch('article-categories/{articleCategory}', 'ArticleCategoryController@update'); 中使用$this->articleCategory。如果存在隐式模型绑定,您应该能够获得ArticleCategoryRequest