Заголовок возможно не всем сначала будет понятен, объясню что нужно
сейчас у меня модули реализованы таким образом, к примеру модуль новости
protected\modules\news\models\News.php
protected\modules\news\controllers\NewsController.php
видно что данный модуль имеет отдельную свою директорию "news", также отдельный файл News.php и NewsController.php
всё это работает, но по мере расширения проекта начинает напрягать создавать новые модули. Например некоторые модули идентичны, мне приходится копировать полностью папку news и в ручную переименовывать например из news в article тоесть под статьи, по сути там поля одинаковые. Но смысл дублировать код? А что если найдётся какой либо баг в news и нужно править код ещё в article? нужно править везде.
Появилась у меня такая мысль, что если весь код перенести в отдельную часть, и его подхватывать другими модулями(news,article), вот только не знаю возможно ли такое делать? использую ActiveRecord. Соответственно у каждого модуля будет свой индекс что-то вроде news_2,article_3 и т.д. Что-то подобное я видел у системы hostcms, там есть функция создать модуль и присваиваешь новому модулю название а индекс присваивается автоматически чтобы не создавать путаницу. У каждого модуля своя таблица.
Как перенести оболочку модулей в отдельную часть и после его подхватывать
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
Это нормально.andry писал(а):приходится копировать полностью папку news и в ручную переименовывать например из news в article тоесть под статьи, по сути там поля одинаковые. Но смысл дублировать код? А что если найдётся какой либо баг в news и нужно править код ещё в article? нужно править везде.
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
я согласен что такой вариант имеет жить, но хотелось как-то автоматизировать делать клон из одного модуля несколько, шаблон можно использовать тот же либо указывать отдельные свои.
Вообще такое возможно сделать, кто ни будь проделывал такое?
я так понимаю это больше с реализацией ActiveRecord связано и именами моделей/контроллеров что-то нужно сделать ведь их имена будут прописаны отдельно.
Вообще такое возможно сделать, кто ни будь проделывал такое?
я так понимаю это больше с реализацией ActiveRecord связано и именами моделей/контроллеров что-то нужно сделать ведь их имена будут прописаны отдельно.
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
Используй трейты. Или напиши компонент PageLikeNews =)
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
SiZE, можно немного по подробнее в какую тему капать дальше?
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
Ты хочешь получить универсальный ответ на каждую группу модулей или тебя конкретно новости-статьи беспокоят?
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
возможно я ещё не совсем разобрался, и нужно ли действительно такое это, заморачиваться с этой автоматизацией. Таких модулей будет возможно не так много новости/статьи/обзоры, и ради них мудрить что-то. Скорее так и оставлю
Re: Как перенести оболочку модулей в отдельную часть и после его подхватывать
Через 2-3 проекта, у тебя модуль новости будет вылизан как у кота сам знаешь что