Laravel规则验证最低和最高工资

时间:2018-01-15 10:26:08

标签: php laravel

我有以下规则。

    _renderItem = ({item}) => {
    return <Text>{item.key}</Text>
   }

如何使min_salary小于或等于max_salary的规则。

1 个答案:

答案 0 :(得分:1)

创建新规则

php artisan make:rule SalaryRule

将规则添加到验证

$rules['min_salary']  = ['required', 'not_in:0', 'numeric', new SalaryRule($request->max_salary)];
$rules['max_salary']  = 'required|not_in:0|numeric';

如果您使用FormRequest,则max_salary可以访问$this->max_salary

确保在代码中导入规则

use App\Rules\SalaryRule;

并且在规则的passes方法中,您可以编写逻辑

public function passes($attribute, $value)
{
    return $value <= $this->max_salary;
}

并创建一个属性max_salary,并在构造函数中传递max_salary时在规则的构造函数方法中初始化它。

protected $max_salary;

public function __construct($max_salary)
{
    $this->max_salary = $max_salary;
}