验证或删除 laravel 中的额外字段

2022-08-30 14:05:00

是否可以使用其他字段的规则验证请求,或者从请求中删除该字段?

简单的例子,我有带有规则的FormRequest对象:

public function rules() {
        return [
            'id' => 'required|integer',
            'company_name' => 'required|max:255',
        ];
    }

当我收到任何其他字段的发布请求时,我想在控制器中获得错误/异常,或者我只想获取id和company_name字段,而没有其他字段。它在laravel中存在任何功能,或者我必须以我的方式制作它?


答案 1

要从 Laravel 中的请求中删除密钥,请使用:

$request->request->remove('key')

答案 2

您使用laravel的帖子请求包含的内容不仅仅是表单输入,因此您需要检查请求以查看其中的内容。

要仅获取所需的字段,您可以使用:

$request->only(['fieldname1', 'fieldname2', 'fieldname3']);

$request->except(['fieldnameYouDontWant1', 'fieldnameYouDontWant2', 'fieldnameYouDontWant3']);

以排除您不想要的那些。


推荐