Автозаполнение в командах
При создании консольных команд вы можете улучшить пользовательский опыт, реализовав автозаполнение для пользователя. Это можно сделать с помощью метода anticipate
, предоставляемого Laravel 🚀
<?php
// Вы можете использовать массивы
$animal = $this->anticipate("Какое ваше любимое домашнее животное?", ['dogs', 'cats']);
// Или запускать closure, срабатывающее каждый раз, когда пользователь набирает символ
$animal = $this->anticipate("Какое ваше любимое домашнее животное?", function (string $input) {
return Animal::query()
->where('name', 'LIKE', "$input%")
->pluck('name')
->toArray();
});