В источнике ToolsAPI.pas существуют некоторые API-интерфейсы для отладки. Вам можно сообщить, когда событие отладки имело место, информация о точках останова, какой процесс отлаживается и т.д. с этим API. Но кажется, что нет никакой поддержки переменных или значений их. Таким образом, нет никакого простого способа реализовать Вашу реквизицию без ужасных взломов.
Имена файлов можно легко передать в командной строке приложения. Это можно сделать либо как аргумент для основного метода (после имени основного класса), либо как свойство (как, я полагаю, намекает Аперкинс) с использованием флага -D .
вы можете посмотреть Как очистить кеш на стороне сервера DrupalВы также можете использовать модуль Drush , который позволяет использовать командную строку для выполнения популярных команд Drupal, таких как "drush cron" или "drush cache clear".
У меня есть самое простое решение для этого. Установите модуль admin_menu (собственно не только для этого, раз уж вы его установили, вы точно не пожалеете, ссылка: http://drupal.org/project/admin_menu ). Хорошо, тогда в недавно появившемся верхнем раскрывающемся меню наведите указатель мыши на свой значок, и появится раскрывающееся меню, и вы увидите: меню Очистить все кеши. Один щелчок - один промыв. Более того, вы можете очистить все кеши вместе или выбрать, что очищать: страницы, меню, темы и т. Д. Попробуйте, и вы никогда не вернетесь назад)
Было бы прекрасно, если бы вы могли просто ПОЛУЧИТЬ поведение, нажав:
http://drupal.local./admin/settings/performance?op=Clear%20cached%20data
, но вы не можете.
Однако я хочу отметить URL-адрес для быстрого перехода через меню администратора (используйте последнюю часть):
http: //drupal.local. / admin / settings / performance
Очистку по требованию можно выполнить в Администрирование> Конфигурация сайта> Производительность.
Вы должны настроить задание cron на запуск каждый час (или с любым другим интервалом по вашему усмотрению).
Когда cron запущен в Drupal, все кеши очищаются и перестраиваются без необходимости делать это вручную.
Если этот вопрос относится к тематике, вам следует отключить механизмы кэширования (агрегирование css / js), и вам не придется очищать данные кеша при внесении изменений.
ПРЕДСТАВЬТЕ:
Мне пришлось деинсталлировать модуль "devel" (он был несовместим со специальными пунктами меню, которые мне были нужны еще хуже), поэтому я сделал свой собственный.
Везде, где вы видите MODULENAME, замените его именем вашего модуля.
ЭТАП 1: Добавьте в любой модуль (желательно один из ваших пользовательских модулей) в HOOK_MENU перед строкой «return $items»:
// short cut for flushing the caches:
$items['flush-cache'] = array(
'type' => MENU_CALLBACK,
'title' => t('Flush the cache'),
'description' => 'MODULENAME Custom Cache Flush',
'page callback' => 'MODULENAME_flush_cache',
'access callback' => TRUE,
);
ШАГ 2: Теперь в том же файле модуля, где он не находится «внутри» какой-либо другой функции, добавьте:
/** Page callback **/
function MODULENAME_flush_cache() {
drupal_flush_all_caches();
return 'Caches were flushed.';
}
Теперь вы можете просто перейти по URL-адресу «/flush-cache» на своем сайте, чтобы очистить кеш. (После того, как вы в последний раз очистите кэш по-старому.)
ШАГ 3: Если вы хотите, чтобы это было ДЕЙСТВИТЕЛЬНО удобно, добавьте следующее в файл page.tpl.php. Вы можете разместить его где угодно между
и . ПРИМЕЧАНИЕ. $my_is_test — это переменная, которую я использую, и она принимает значение TRUE в моей тестовой системе и FALSE в рабочей среде. Если у вас нет чего-то подобного, замените его на TRUE или FALSE, чтобы включить или выключить его:<?php if ($my_is_test): ?>
<a style="text-align:left; position:absolute; right:2px; top:20px;" href="<?=$base_path?>flush-cache" onclick="this.innerHTML = '<b><blink><big>Wait...</big></blink></b>';">flush</a>
<? endif; ?>
И вуаля! У вас есть ссылка «скрыть» в правом верхнем углу каждой страницы, на которую вы можете нажать. Не стесняйтесь менять значения «справа» и «сверху» (или менять «справа» на «слева» или «сверху» на «снизу», чтобы разместить их там, где вам нравится. Это позиционирование ссылок работает только в современных браузерах, но это только для вас, так что это не должно быть проблемой, верно?