Как отслеживать идентификатор связанной таблицы в другом контроллере?

Я создаю модуль в Prestashop, для которого требуется несколько контроллеров.

Я решил добавить их на вкладку, причем один видимый (передний), а остальные, связанные с первым, скрыты.

Когда я перехожу к этому главному контроллеру администратора через меню, он отлично работает, перечисляя различные элементы (renderList), а также добавляя/обновляя/удаляя их.

Теперь, когда я нажимаю значок представления, я перехожу к своему другому контроллеру администратора, который управляет этой конкретной записью (подсписок со своей собственной формой, но связанный с родительским идентификатором).

Теперь проблема в том, что я перенаправляю, сохраняя правильный URL-адрес, но затем, на моей подстранице, если я нажимаю, например, создать, я теряю parent_id. И после этого я не могу создать запись, потому что у нее отсутствует родительский идентификатор.

Как я могу сказать этому субконтроллеру, чтобы он сохранил идентификатор, который я ему дал?


person Cyril N.    schedule 16.04.2014    source источник


Ответы (1)


До сих пор единственное решение, из которого я исходил, это сделать так:

В моем подчиненном контроллере я всегда должен иметь id_other_model в URL-адресе, поэтому я добавил этот метод:

public function initProcess() {
    parent::initProcess();
    self::$currentIndex .= '&id_other_model='.(int)Tools::getValue('id_other_model');
}

И пока это работает хорошо.

Если есть лучшая альтернатива, я был бы признателен, если бы узнал об этом :)

person Cyril N.    schedule 16.04.2014