小编Jim*_*äll的帖子

如何在控制器Laravel中编写自定义验证规则?

我在控制器Laravel中有默认验证规则:

$validator = Validator::make($request->all(), [
            'email' => 'required|email',
            'phone' => 'required|numeric',
            'code' => 'required|string|min:3|max:4',
            'timezone' => 'required|numeric',
            'country' => 'required|integer',
            'agreement' => 'accepted'
        ]);
Run Code Online (Sandbox Code Playgroud)

我试过这个,但不知道如何在函数内部传递一些参数:

 public function boot()
    {
        Validator::extend('phone_unique', function($attribute, $value, $parameters) {
            return substr($value, 0, 3) == '+44';
        });
    }
Run Code Online (Sandbox Code Playgroud)

如何根据自己的规则扩展此验证?例如,我需要验证输入的连接:

$phone = $request->code.' '.$request->phone
Run Code Online (Sandbox Code Playgroud)

检查后是否$phone存在于数据库中

我想用这个方法:

>  $validator->sometimes('phone', 'required|alpha_dash|max:25', function
> ($input) {
>             if ((Auth::user()->phone == $input->phone)) {
>                 return false;
> 
>             } else {
> 
>                 $t = User::where("phone", $input->phone)->get();
>                 return …
Run Code Online (Sandbox Code Playgroud)

laravel laravel-5.3

6
推荐指数
2
解决办法
7944
查看次数

Elasticsearch - 对字符串中的数字禁用模糊搜索

我正在尝试使用elasticsearch来搜索产品.某些产品名称包含数字.我使用模糊搜索让用户的生活更轻松,但我不希望数字被模糊搜索.我可以仅对数字禁用模糊搜索,但是将其用于字符串中的其余字符吗?

或者弹性搜索不适合我想要实现的目标?

我搜索时搜索电视或显示器的示例Manufacturer TV 55"我不想Manufacturer TV 65"显示在结果中.至少不在前10名.

fuzzy-search elasticsearch elasticsearch-5

6
推荐指数
1
解决办法
209
查看次数