首页 > 解决方案 > Laravel 使用 Mutator 请求验证

问题描述

我在蛇案例中有数据库列,所以我在我的模型类中定义了突变器以使用骆驼案例。在控制器的更新方法中,我期待一个自定义请求参数。在验证方法中,我是否需要为 Snake Case 和 Camel 指定规则,或者有什么方法可以避免规则验证的重复代码。下面是 mutator、request 和 controller 的示例代码。

//Mutator
public function setLogoWidthAttribute($value){
        $this->attributes['logo_width']=$value;
    }
//Request
public function rules()
    {
        return [
            'name' => 'sometimes|required|max:500',
            'logo'=>'sometimes|max:50',
            'logoWidth'=>'sometimes|digits_between:1,3|numeric' ,
            'logo_width'=>'sometimes|digits_between:1,3|numeric'
        ];
    }
//Controller 
public function update(OrgRequest $request, Org $org)
    {
...
}

谢谢。

标签: laraveleloquent

解决方案


我不太明白你的问题,但映射所有的 snake_case 和 camelCase 属性是一种矫枉过正并且不会扩展的问题。我不建议这样做。使用snake_case 并将camelCase 输入映射到它。


推荐阅读