Вопрос

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

Как мне сделать это правильно?

Бонус: как у меня есть модуль, удаляющий вид на hook_uninstall?

Это было полезно?

Решение

Создайте файл modulename.views_default.inc (замените модуль на именем вашего модуля) и скопируйте экспортированный код в реализации hook_views_default_views() Вы пишете в этом файле.

Например, модуль просмотров реализует node_views_default_views() Для модуля узла. Соответствующие детали для представления на первой странице являются следующими.

  $views = array();

  // Omissis

  $view = new view;
  $view->name = 'frontpage';
  $view->description = 'Emulates the default Drupal front page; you may set the default home page path to this view to make it your front page.';
  $view->tag = 'default';
  $view->base_table = 'node';
  $view->human_name = 'Front page';
  $view->core = 0;
  $view->api_version = '3.0';
  $view->disabled = TRUE; /* Edit this to true to make a default view disabled initially */

  // Omissis

  $views['frontpage'] = $view;

Крюк затем возвращает содержание $views.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с drupal.stackexchange
scroll top