как я могу переопределить node/x/edit как node/x/add с помощью всего одной панели?

Я использую durpal 6 и имею несколько страниц панелей. Один для /node/%node/edit переопределяет страницы редактирования узла. но на моей странице узла/добавления страница панели не применяется.

Нужно ли добавлять новую страницу? Существует контекст панели «форма добавления узла» — если я добавлю это, могу ли я в любом случае использовать один вариант страницы панели для as node/edit as node/add ? Или мне придется использовать 2 разные формы?


person Andreas Schröder    schedule 26.12.2011    source источник
comment
у нас была точно такая же проблема. не мог разобраться, поэтому мы использовали панель для узла/редактирования, а затем создали еще одну страницу с созданием формы   -  person Josep Valls    schedule 27.02.2012


Ответы (1)


Наконец решил проблему. В нашем случае это была коллизия с модулем i18n. Я сообщил об этом на drupal.org, но, похоже, он работает так, как задумано.

В вашем случае, если вы не используете i18n, может быть какой-то модуль, переопределяющий node_page_edit поверх ctools. Проверьте таблицу menu_router, чтобы увидеть, какая функция (модуль) имеет свой обратный вызов, зарегистрированный для маршрутов node/add/% и node/edit/%, а затем попытайтесь уменьшить вес этого модуля или увеличить вес менеджера страниц ctools. Очистите кеши и проверьте обратный вызов для маршрутов добавления и редактирования узлов: page_manager_node_edit.

/**
 * Entry point for our overridden node edit.
 *
 * This function asks its assigned handlers who, if anyone, would like
 * to run with it. If no one does, it passes through to Drupal core's
 * node edit, which is node_page_edit().
 */
function page_manager_node_edit($node) {
...

Вы можете проверить мой хак и комментарии автора модуля здесь: http://drupal.org/node/1561046#comment-5997776

person Josep Valls    schedule 07.06.2012