访问symfony任务中的项目设置

时间:2011-05-13 03:10:51

标签: symfony1 yaml

我已按照How to manage your own cross-apps/global configuration values中的建议在文件config/project.yml中设置了一些自定义symfony项目级设置。按照这些说明我添加了行

require_once sfConfigCache::getInstance()->checkConfig('config/project.yml');

到我的configure应用程序的client文件的clientConfiguration.class.php方法。

然后我使用php symfony generate:task创建了一个新的symfony任务。在这个新任务中,我想访问config/project.yml文件中的设置。这是任务的执行部分:

protected function execute($arguments = array(), $options = array()){
  // initialize the database connection
  $databaseManager = new sfDatabaseManager($this->configuration);
  $connection = $databaseManager->getDatabase($options['connection'])->getConnection();

  $configuration = ProjectConfiguration::getApplicationConfiguration('client', 'test', true);

  echo sfConfig::get('project_mail_webmaster') . "\n" ;
}

但是,当我运行任务时,我收到此错误:

PHP Fatal error:  Call to undefined method sfConfigCache::getInstance() in /opt/sfproject/apps/client/config/clientConfiguration.class.php on line 7

http://trac.symfony-project.org/wiki/HowToHandleCrossAppsConfigurationFiles

1 个答案:

答案 0 :(得分:0)

似乎已经在How to create a custom yaml config file in Symfony的Stackoverflow中回答了这个问题。