@66demon666
По навыкам джун - по факту безработный

Yii2 RESTful API зачем использовать Search модели?

И снова здравствуйте! Сгенерировал CRUD через Gii для сущности post, увидел в действиях модель работает с PostSearch, перепилил метод под простой $model->find()->all(). А собственно зачем нужны эти Search и обязательно ли их юзать?
  • Вопрос задан
  • 151 просмотр
Решения вопроса 1
myks92
@myks92 Куратор тега Yii
Нашёл решение — пометь вопрос ответом!
Search Model это модель, которая работает с фильтрацией данных, сортировкой и выводит это все через DataProvider.

Модель изначально делает слишком много, поэтому будет лучше если вы используете свою форму фильтрации и выкиньте от туда все лишнее. Модель фильтрации не должна наследоваться от сущности и работать напрямую с базой.

Метод all() не рекомендуется использовать для больших данных. Скрипт может зависнуть.

В модели так же удобно делать списки для выпадающих списков формы.

Если говорить кратко, то SearchModel это форма, в которую вы передаёте данные и фильтруете по ним. Но так как это не только форма, то её называют модель. А вообще её можно назвать и Filter.

Обойтись без неё можно и нужно, если знаете как. Это все сделано для быстрой RAD разработки.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы