仅当Laravel中的字段为零或db中的值时才验证该字段

时间:2016-01-20 11:16:08

标签: validation laravel

我是Laravel的新手,很抱歉我的新手问题:

我在输入字段中,只有当它为零或者它的值存在于“products”db表中时才必须有效。 我正在使用Laravel 5.2进行表单请求验证。

这是我的代码:

class CreateRequest extends Request
{
    /**
     * 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()
    {
        return [
          'product_id'    =>  'sometimes|exists:products,id'
        ];
    }
}

这适用于数据库验证,但如果它为零,我如何使其有效?

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

这可能会有所帮助

public function rules()
    {
        return [
          'product_id'    =>  'integer|size:0|exists:products,id'
        ];
    }

答案 1 :(得分:0)

您必须创建自定义验证规则

如果您使用的是5.6,则可以创建自定义规则或传递闭包

for /r %f in (a-*.gif) do convert %f a%~nxf +append %f

希望这有帮助