Команда Drush для добавления новой зависимости модуля к функции

Есть ли команда drush для обновления функции при добавлении новой зависимости модуля? Я знаю, что вы можете использовать команду FU для обновления изменений в уже добавленных представлениях, типах контента и т. д., но меня интересует добавление новых представлений, типов контента и зависимостей модулей. Пока что единственный найденный мной способ включить эти изменения в функцию — это повторно загрузить ее.

К счастью, Git сделал этот процесс намного проще, чем раньше с SVN.


person Christian Schlensker    schedule 20.02.2011    source источник


Ответы (3)


Если вам удобно редактировать файл .info, функции формата, используемые для определения компонентов, которые следует экспортировать, довольно просты. Например:

  features[node][] = "node_type"
  features[view][] = "view_name"
  features[variable][] = "variable_name"

Если добавить любой из них в ваш файл .info и запустить drush fu, результирующий модуль будет включать указанные компоненты, если они не были предварительно экспортированы. Функции позаботятся о добавлении любых других кусочков, которые, по его мнению, должны быть там.

Зависимости модулей для функций работают так же, как зависимости модулей для любого модуля в Drupal — просто добавьте dependencies[] = "module_name" в файл .info вашей функции.

Это основной способ обновления функций, и, выполнив еще пару шагов, вы сможете создать и активировать пустой модуль и «настроить» его, добавив таким образом компоненты функций в ваш .info-файл.

Команда drush, такая как drush features-add-component featurename --node=new_type, может быть создана, но я не верю, что есть опубликованная команда, которая делает это. Существует несколько скриптов drush с расширенными функциями администрирования функций, разбросанных по очередям задач функций, и несколько проектов в стадии разработки. Основным преимуществом такой команды будет версия пользовательского интерфейса функций для командной строки, показывающая сборщику функций, какие компоненты доступны для экспорта. Эта утилита несколько ограничена, если вам удобно редактировать файл .info вручную.

person Grayside    schedule 20.02.2011

Текущий способ сделать это в drush — «features-export» или «fe». (добавление функций устарело)

drush fe my_existing_feature dependencies:my_new_dependency

Еще несколько лайфхаков:

Команду также можно использовать для создания нового элемента точно таким же образом, содержащего компонент. Единственное отличие состоит в том, что имя функции еще не существует как функция. Например, это создаст новую функцию, содержащую тип узла:

drush fe my_new_feature node:my_node_type

Наконец, это идет рука об руку с командой feature-components (fc). Вы можете увидеть список всех неэкспортированных компонентов следующим образом:

drush fc --not-exported

В качестве ярлыка вы можете указать тип компонентов для поиска:

drush fc --not-exported field

Вы можете не указывать --not-exported, чтобы также видеть экспортированные компоненты, но на практике я хочу видеть только неэкспортированные компоненты. Это позволяет мне сходить с ума внутри Drupal, создавая вещи, а затем, когда я закончу, перейти к командной строке и убедиться, что все, что я создал, экспортируется в функцию.

person Brock Fanning    schedule 30.05.2013

Теперь вы можете сделать то же самое, используя drush functions-add (drush fa). «drush fa» создаст список элементов, которые вы можете добавить к своей функции. Если вы знакомы с редактированием файла .info или когда-либо просматривали имена компьютеров в пользовательском интерфейсе функций, вы узнаете имена этих элементов, которые можно изменить.

Ex:

drush fa feature_name dependencies:views views_view:user_questions

Это добавит модуль Views в качестве зависимости и представление «user_questions» в «feature_name».

Предупреждение: похоже, что эта команда была добавлена ​​сравнительно недавно; Мне нужно было обновить функции до 7.x-1.x-beta6, чтобы получить его. К сожалению, он еще не перенесен на D6, но, надеюсь, это произойдет в ближайшее время; см. эту проблему, чтобы узнать о прогрессе и патче, который даст вам "drush fa" на D6 . Также ведутся дискуссии о названии/функциональности команды; следите здесь, чтобы узнать, как это происходит. Я постараюсь обновить этот пост.

person areynolds    schedule 06.03.2012