我试图用sfFacebookConnectPlugin this tutorial来构建FB应用程序演示,我有一些小问题,但仍然无法修复它(iam symfony新手使用1.4)。 我已经通过终端命令安装了这个插件:
我已将它们激活:
class ProjectConfiguration extends sfProjectConfiguration
{
public function setup()
{
if (function_exists('date_default_timezone_set')) {
date_default_timezone_set(@date_default_timezone_get());
}
$this->enablePlugins('sfDoctrinePlugin');
$this->enablePlugins('sfBehatPlugin');
$this->enablePlugins('sfDoctrineGuardPlugin');
$this->enablePlugins('sfFacebookConnectPlugin');
}
}
但是当我在我的布局中使用时:
<?php use_helper('sfFacebookConnect')?>
我收到此错误:
Unable to load "sfFacebookConnectHelper.php" helper
in: SF_ROOT_DIR/apps/frontend/modules/main/lib/helper,
SF_ROOT_DIR/apps/frontend/lib/helper,
SF_ROOT_DIR/lib/helper,
SF_SYMFONY_LIB_DIR/helper.
帮助者出现在 /home/palmic/www/behattest/plugins/lib/helper/sfFacebookConnectHelper.php
如何告诉symfony从那里加载它?
感谢名单!
答案 0 :(得分:1)
问题出在插件本身,帮助程序和其他lib类必须在plugins /&lt; plugin-name&gt; / lib目录中,以便插件助手必须在:
plugins/<plugin-name>/lib/helper
不在plugins / lib。
答案 1 :(得分:1)
作为临时修复(直到编写插件的开发人员移动他们的帮助程序),您可以在SF_ROOT_DIR/lib/helper
中创建自己的sfFacebookConnectHelper文件,其中包含以下代码:
<?php
require_once dirname(__FILE__) . '/../../plugins/sfFacebookConnectPlugin/lib/sfFacebookConnectHelper.php';
这条路可能是错的,所以只需将它指向他们的帮手即可。
然后你仍然可以在你的代码中使用<?php use_helper('sfFacebookConnect')?>
,当真正的帮助者被移动到正确的文件夹时,只需删除这个文件。
另外,小提示。您可以执行以下操作,而不是在ProjectConfiguration文件中重复调用$this->enablePlugins()
:
$this->enablePlugins(array(
'sfDoctrinePlugin',
'sfBehatPlugin',
'sfDoctrineGuardPlugin',
'sfFacebookConnectPlugin'
));