application.ini中的模块特定资源配置

时间:2011-06-07 13:21:29

标签: php zend-framework zend-application zend-framework-modules zend-config

使用特定模块时,我可以将资源配置为不同吗?

根据我在documentation (example #12)中所读到的,这应该是可能的。但我还没有运气。

详细地说,我正在尝试为翻译文件设置另一条路径。

resources.translate.adapter = "array"
resources.translate.data = APPLICATION_PATH "/views/languages"
resources.translate.options.scan = "filename"
resources.translate.options.disableNotices = true
resources.translate.options.logUntranslated = false 
mobile.resources.translate.data = APPLICATION_PATH "/modules/mobile/views/languages"

来自文档

  

示例#12配置模​​块

     

您可以使用模块名称作为配置文件中的前缀或子>部分来指定特定于模块的配置。

     

例如,假设您的应用程序有一个“新闻”模块。以下是INI>以及显示该模块中资源配置的XML示例。

     
      
  1. [制作]
  2.   
  3. news.resources.db.adapter =“pdo_mysql”
  4.   
  5. news.resources.db.params.host =“localhost”
  6.   
  7. news.resources.db.params.username =“webuser”
  8.   
  9. news.resources.db.params.password =“XXXXXXX”
  10.   
  11. news.resources.db.params.dbname =“news”
  12.   

2 个答案:

答案 0 :(得分:1)

我错过了一个模块Bootstrap文件。

添加了/modules/mobile/Bootstrap.php

<?php

class Mobile_Bootstrap extends Zend_Application_Module_Bootstrap {
}

现在情况正常,per module translation也在(在初始帖子的评论中提到)。

答案 1 :(得分:0)

我认为你忘了初始化你的模块,因为你没有提升它们。

从文档(您指向的地方)

  

由于模块资源默认不接受任何参数,因此为了通过配置启用它,您需要将其创建为空数组。

因此,您需要通过配置文件创建模块阵列,例如,您可以使用以下命令填充模块:

resources.modules[] = "default"
resources.modules[] = "mobile"