Страница 1 из 1

Доступ к данным из view

Добавлено: 2019.11.22, 02:34
vitkvit
Считаю вполне уместным код во вьюхах:

... = Category::find()
->selectFormattedName()
->enabled()
->indexBy('id')
->orderBy('name')
->column();

По сути, это вызов процедур selectFormattedName(), enabled().
Названия полей id, name меняться не будут. Зачем это все выносить? На мой взгляд, будет ненужное усложнение.
Просьба поделится опытным по этому поводу.

Re: Доступ к данным из view

Добавлено: 2019.11.22, 07:44
maleks
Я бы все такие выборки вынес в отдельный класс Репозитория как мы обсуждали тут.
Чтобы :
- все выборки были в одном месте
- иметь возможность назвать метод как то осмысленно, кто сейчас догадается для чего эта выборка?
- вьюхи не зависели от БД.

Re: Доступ к данным из view

Добавлено: 2019.11.22, 11:37
vitkvit
Ого, там смотреть и смотреть...
Спасибо за ответ, обязательно почитаю...
- все выборки были в одном месте
выборок бывает очень много, не получится ли каша?
- иметь возможность назвать метод как то осмысленно, кто сейчас догадается для чего эта выборка?
разве Category::find()->selectFormattedName()->enabled() не дают осмысленное название?
- вьюхи не зависели от БД.
по моему зависимость от базы внутри Category::find(), или что-то другое имеется ввиду?

Re: Доступ к данным из view

Добавлено: 2019.11.22, 11:47
maleks
Там все смотреть не надо.
То черновой вариант, первая версия. Вы только про репозиторий посмотрите.
- можно же разные репозитории заводить. Каша - это когда во вьюхах кучи непонятных выборок
- Осмысленное название - это чтобы не программист понял что тут выводится
- Ну весь вот этот код построения запроса написан на уровне работающем с БД - orderBy, column...