Доброго времени суток! В модели поиска Search.php есть метод для получения массива с именами пользователей для дальнейшего вывода их списком dropdown в шаблоне
public function getDropDownData(): array
{
$data = [];
$query = self::find()->select('id')->distinct()->all();
foreach ($query as $user) {
$data[$user->id] = $user->getName();
}
return $data;
}
Нужно помимо имени пользователя вывести название компании рядом в скобках из связанной таблицы. Я доработал метод и сделал так
foreach ($query as $user) {
$data[$user->id] = $user->getName() . ' (' . $user->company->getName() . ')';
}
Но мне кажется такой способ не очень красив, так как вдруг понадобится этот список в другом месте, но без имени компании, да и принцип открытости-закрытости нарушается как мне кажется. Подскажите как можно решить эту проблему?