@Pichenka94

Как передать переменую в Validator?

Добрый день, собственно вопрос в заголовке.

Сейчас говорит что переменная неопределена, код следующий

...
protected $phone_number;

public function __construct()
{
   $this->middleware('guest');
   $this->phone_number = request()->input('phone');
}

protected function validator(array $data)
{
    return Validator::make($data, [
            ...
            'verification_code' =>  Rule::exists('phone_numbers', 'verification_code')->where(function ($query) use ($phone_number) {
                $query->where('phone_number', $phone_number);
            }),
    ]);
}
...
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
@Kostik_1993
Web Developer
Все правильно говорит, ты же к ней обращаешься неправильно, ты задал ее как $this->phone_number, а вызываешь как $phone_number.
Следовательно определи ее перед вызовом валидатора $phone_number = $this->phone_number;

Или вызывай ее из контекста объекта
'verification_code' =>  Rule::exists('phone_numbers', 'verification_code')->where(function ($query) {
                $query->where('phone_number', $this->phone_number);
            }),
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы