我正在调试安装脚本,该安装脚本当然仅在数据库和代码具有不同的版本号时才运行。为了便于调试,我只是将升级代码临时写入一个易于访问的文件,然后在该文件中运行,以便清除所有问题。
代码示例:
function addressListPage()
{
// Set up globals.
$registry = getRegistry();
setPageTitle('Address List');
// @DEBUG: Remove.
$registry->libraryLoad('install');
upgrade_8_16_to_8_17();
// @DEBUG: Remove.
// Initialize template.
$template = new PageTemplate();
// Define Regions
$template->addRegion('header', $registry->widgetExecute('site_header_logo') . $registry->widgetExecute('site_header_links'));
$template->addRegion('content_bottom', $registry->widgetExecute('address_list'));
$template->addRegion('footer', $registry->widgetExecute('site_footer'));
return $template;
}
虽然我通常会检查所有签入以捕获调试代码,但偶尔会有一条调试语句进入系统。对于调试打印等,我在函数内部设置了一些开关,以使调试调用无效。但是,这种安装脚本之类的情况更加危险。我还没有签入,但是会喜欢类似于@todo标志的东西,当它出现时,它会更多地“出现在您的脸上”。也许是一个阻止它签入git版本控制的开关。或在尝试关闭文件时说“您确定”。甚至出现在我用于执行长期任务的“ @todo”以外的列表中。