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

Как правильнее обратится из одного модуля - к другому

СообщениеДобавлено: 08 ноя 2013, 23:53
idencial
Есть 2 модуля - records и recordscategory

они связаны тем, что в модуле records используется категории из recordscategory

Вопрос вот в чем.

Если при запросе модуля records, в виде "/ru/records/?cat=1", т.е выбираются записи определенной категории, у меня есть массив

$records, т.е массив самих записей

у меня перед ним выведено <h1><?php echo tt("Records"); ?></h1>

как вместо <?php echo tt("Records"); ?> правильнее обратится к модулю recordscategory чтобы имея в GET запросе cat=1 получить название категории и вывести ее вместо tt("Records") (ес-но с учетом языка)

У меня, например, в контроллере records есть

Код: Выделить всё
$record_id = $key = Yii::app()->request->getParam('cat',0);
$criteria=new CDbCriteria;
$criteria->order = 'sorter';
$criteria->addCondition('active=1');
$criteria->addCondition('record_id='.$record_id); 


Вероятнее правильнее в него нужно поставить запрос имени категории или правильно как-то иначе?

Re: Как правильнее обратится из одного модуля - к другому

СообщениеДобавлено: 11 ноя 2013, 10:52
Foton
Вам нужно создать связи между моделями. Почитайте о них тут и посомтрите как это реализовано в наших продуктах.

Re: Как правильнее обратится из одного модуля - к другому

СообщениеДобавлено: 11 дек 2013, 13:42
idencial
Спасибо за совет, хоть и с запозданием пишу.

В связях разобрался.

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

Код: Выделить всё
$category = Recordcategory::model()->cache(param('cachingTime', 1209600), Recordcategory::getCacheDependency())->findByPk($record_id);