Laravel - Возможно ли использовать правило проверки для группы атрибутов? - PullRequest
0 голосов
/ 09 октября 2018

Я использую правила Laravel и хочу сделать проверку, которая требует нескольких атрибутов.Например, я хочу, чтобы правило проверяло, чтобы запрошенное количество не превышало доступный запас для данного продукта.Итак, что-то вроде

public function rule() {
  return [
    'quantity produyctId' => "checkQty"
}

Я бы предпочел решить это, используя rules, но другие методы также приемлемы.

1 Ответ

0 голосов
/ 09 октября 2018

Вы можете создать пользовательскую проверку путем расширения проверки.

В AppServiceProvider class

Validator::extend('quantity_validity', function ($attribute, $value, $parameters, $validator) {

    $productId = $parameters[0];
    $quantity = $value;

    // you can do whatever with these,
    // and finally return true or false according to your desire.
});

В проверке

public function rule() {
    return [
        'quantity' => "quantity_validity:{$productId}"
    ]
}
...