我有一个Drupal 6模块的新版本。在新版本中,我在.info文件中添加了一个新的依赖项到我创建的名为lib_views的视图实用程序模块。
但是,升级模块时可能无法启用lib_views。如果不是,那么升级我的模块会导致无法恢复的崩溃,因为视图会触发一个钩子,该钩子在我未启用的lib_views模块中调用一个函数。
是否有任何安全的方法可以将新的依赖项添加到现有的Drupal模块中,以防止这种情况发生?
答案 0 :(得分:1)
您可以强制drupal加载模块(例如,CCK模块的常见做法)。
示例:
function example_install() {
drupal_load('module', 'content');
content_notify('install', 'example');
}
在示例中,drupal_load
首先加载“ content ”模块,然后content_notify
是只能在内容模块可用时才能使用的函数示例。
因此,如果drupal_load
调用返回FALSE
,您可以检测到模块丢失并通知用户。
答案 1 :(得分:0)
Drupal 7在转到update.php时会自动处理这个问题(你想在更新模块后访问它)。我想另一种选择是通过更新功能显示警告信息。