Drush включение/выключение модулей разработки


Мне нравится пункт меню "Включить модули разработчика" в меню администратора. Как я могу переключить это из командной строки?

В меню администратора уже есть конфигурация модулей "разработчик", настроенных в settings.php . Я могу получить доступ к этому массиву с помощью drush vget admin_menu_devel_modules (ну, вроде того, что возвращает две записи). Теперь я хочу "передать" эти элементы в drush enable. Я знаю, что это невозможно в буквальном смысле, но это мой мыслительный процесс.

Как я могу написать эту команду?

 3
Author: ack, 2011-03-15

5 answers

Я предпочитаю иметь пользовательский модуль, который имеет зависимости для всех необходимых мне модулей разработчика. Я также настроил этот модуль так, чтобы в нем были некоторые сильные переменные (такие как отключение предварительной обработки css/js и любого кэширования страниц), и включил несколько блоков разработчика, использующих контекст (например, выполнение php и инспектор контекста). Это позволяет вам просто отключить/отключить один модуль, чтобы включить/выключить все ваши утилиты разработчика.

Вот мой модуль разработки колыбельных роботов, который вы можете посмотрите на пример.

 4
Author: q0rban, 2011-03-16 03:03:59

Самым чистым вариантом может быть написание собственной команды Drush с нуля. Они не должны быть ужасно сложными - команда "сэндвич" устанавливается вместе с Drush и служит хорошим шаблоном.

 1
Author: Eaton, 2011-03-16 02:56:01

Еще одна возможность для тех, кто использует каркас здания, такой как ant или phing, - определить цель в вашем build.xml файл со всеми задачами, которые вам необходимо выполнить, чтобы настроить идеальную среду разработки. Можно определить другую цель, чтобы отменить первую. Таким образом, вы можете переключаться между двумя режимами по своему желанию.

Краткий пример таких целей приведен ниже

   <target name="en-dev">
      <exec  command="drush --yes en devel devel_themer coder"  />
      <exec  command="drush --yes perm-grant 'Authenticated User' 'access devel'" />
      <exec  command="drush --yes perm-grant 'Annonymous User' 'access devel'" />
    </target>

    <target name="dis-dev">
      <exec  command="drush --yes dis devel devel_themer coder"  />
      <exec  command="drush --yes perm-revoke 'Authenticated User' 'access devel'" />
      <exec  command="drush --yes perm-revoke 'Annonymous User' 'access devel'" />
    </target>

В этом случае я мог бы запустить phing en-dev, чтобы настроить свою среду разработки.

Для противоположной функции I просто беги phing dis-dev

 1
Author: DKinzer, 2012-05-04 01:14:44

Не проверено в этой ситуации, но xargs может принимать результаты одной команды и передавать их в качестве аргументов следующей

drush vget admin_menu_devel_modules | xargs drush en  

Возможно, вам придется сделать немного sed в середине, если переменная, которую возвращает vget, не нравится drush en.

 0
Author: Jeremy French, 2011-03-15 12:06:18
drush pm-enable `drush php-eval "echo 'ctools'"`

Это будет попытка включить технические средства; измените технические средства echo на те, которые форматируют модули с пробелами между ними

 0
Author: hefox, 2011-03-18 09:30:38