4 / 4 / 6
Регистрация: 23.05.2012
Сообщений: 445
|
|||||||||||
1 | |||||||||||
Как в Yii правильно наследовать модели?23.12.2014, 03:30. Показов 3323. Ответов 5
Метки нет (Все метки)
Есть 2 таблицы - t_product и t_service , в них одинаковые поля: название, цена и т.д. Я создал модели и сгенерировал CRUD. Сделал так, вынес повторяющийся код в класс Craft.
0
|
23.12.2014, 03:30 | |
Ответы с готовыми решениями:
5
Как в yii правильно сделать actionCreate для модели без связей? Как в Yii обращаться с текущей модели из базовой модели? Как правильно унаследовать TPoint2D от TPoint3D/ Правильно ли наследовать? ООП Как правильно наследовать форму |
PHP developer
259 / 157 / 26
Регистрация: 20.03.2013
Сообщений: 1,018
|
||||||
23.12.2014, 08:23 | 2 | |||||
Сообщение было отмечено EVOSandru6 как решение
Решение
Для моделей нужно наследоваться от ActiveRecord. Наследуйтесь сразу от ActiveRecord:
Да и код класса Craft тогда выкладывайте PS. Эти таблицы у Вас связаны будут? Или как, покажите еще БД тогда уж.
1
|
4 / 4 / 6
Регистрация: 23.05.2012
Сообщений: 445
|
|
23.12.2014, 08:55 [ТС] | 3 |
Класс Craft вымышленный, я просто хотел в него повторяющийся код собрать и наследоваться, но теперь решил наследовать товары от услуг. Насколько это плохо, покажет время.
0
|
PHP developer
259 / 157 / 26
Регистрация: 20.03.2013
Сообщений: 1,018
|
|
23.12.2014, 08:58 | 4 |
Сообщение было отмечено EVOSandru6 как решение
Решение
А почему бы не на 2 разных разделить, ведь это совершенно разные объекты? Вам модели надо наследовать от CActiveRecord!
1
|
4 / 4 / 6
Регистрация: 23.05.2012
Сообщений: 445
|
|
23.12.2014, 12:39 [ТС] | 5 |
Все так советуют, наверное так и сделаю, почему то не люблю, когда код повторяется)
0
|
PHP developer
259 / 157 / 26
Регистрация: 20.03.2013
Сообщений: 1,018
|
|
23.12.2014, 12:47 | 6 |
Вы сначала лучше напишите нужный функционал, а потом уже можно и в сторону оптимизации смотреть :-)
Ведь если мы говорим например о 2 велосипедах, один простой, другой скоростной, вот тут можно говорить о наследовании, потому что говорится об одном объете велосипед. В вашем же примере 2 разных объектах, даже если у них есть поля name, height, length, это совсем не говорит о том что это один объект и нужно наследоваться.
0
|
23.12.2014, 12:47 | |
23.12.2014, 12:47 | |
Помогаю со студенческими работами здесь
6
Как правильно наследовать на Symfony? Как правильно наследовать абстрактные классы Как правильно наследовать несколько элементов Как правильно наследовать методы класса Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |