Дублирующиеся модели во frontend и backend

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
andreyrud
Сообщения: 265
Зарегистрирован: 2011.09.26, 14:59

Re: Дублирующиеся модели во frontend и backend

Сообщение andreyrud »

Я генерю модели в common с помощью gii. Более в них ничего не делаю. Ну может геттеры/сеттеры. Для фронтэнда и бакэнда свои модели наследую от модели в common. В процессе в этих новых моделях появляются одинаковые куски кода, которые переношу в модель из common.
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Дублирующиеся модели во frontend и backend

Сообщение lynicidn »

andreyrud писал(а):Я генерю модели в common с помощью gii. Более в них ничего не делаю. Ну может геттеры/сеттеры. Для фронтэнда и бакэнда свои модели наследую от модели в common. В процессе в этих новых моделях появляются одинаковые куски кода, которые переношу в модель из common.
создайте новый топик :P

можно трейт
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Дублирующиеся модели во frontend и backend

Сообщение lynicidn »

кстати тут ктото приводил слова Александра, если я правильно понимаю, это @samdark, но он говорил, что не создает модели в коммон, а все чаще во фронт и бек у него разные модели
andreyrud
Сообщения: 265
Зарегистрирован: 2011.09.26, 14:59

Re: Дублирующиеся модели во frontend и backend

Сообщение andreyrud »

У меня так и получается. В common тонкая и только она знает о непосредственных именах полей в базе. Остальные толстые и содержат всю логику. Таким образом, в случае изменения структуры реальной базы, мне достаточно перегенерить модель в common + немного геттеров/сеттеров исправить. Трейты не пользую - не вижу в них смысла.
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Дублирующиеся модели во frontend и backend

Сообщение lynicidn »

+ забываете реляции, им надо тоже модели давать на фронт ил ибек
andreyrud
Сообщения: 265
Зарегистрирован: 2011.09.26, 14:59

Re: Дублирующиеся модели во frontend и backend

Сообщение andreyrud »

Если gii генерит и реляции, то они, соответственно, попадают в common модель. Их можно переопределить, но я с надобностью такой не сталкивался.
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Дублирующиеся модели во frontend и backend

Сообщение lynicidn »

andreyrud писал(а):Если gii генерит и реляции, то они, соответственно, попадают в common модель. Их можно переопределить, но я с надобностью такой не сталкивался.
имеем 2 модели юзер и профиль, в коммон и во фронт, не перекрывая реляции, что будет результатом

Код: Выделить всё

/** @var \frontend\models\User $user */
$profile = $user->getProfile();
echo $profile instanceof \frontend\model\Profile ? 'модель из фронтенда' : 'модель которую я не жду';
 
Ответить