我将我的symfony 1.4项目从我的本地计算机(Windows 7)部署到我的测试服务器(Linux Ubuntu Server)。 每当我通过我的浏览器(IE,FF ...)打开这个项目时,我得到一个错误500,这肯定是由于我从log / frontend_staging得到的错误引起的:
"symfony [err] {InvalidArgumentException} Unable to load "I18nHelper.php" helper in: SF_ROOT_DIR/apps/frontend/lib/helper, SF_ROOT_DIR/lib/helper, SF_ROOT_DIR/lib/vendor/symfony/lib/helper."
文件I18NHelper.php
位于SF_ROOT_DIR/lib/vendor/symfony/lib/helper
,所以我没有看到问题。我已经玩了命名,虽然有些人提到他们在Unix系统上的助手名称中使用大写N有问题,但这根本没有解决我的问题。
答案 0 :(得分:4)
这是一件非常讨厌的小事:
使用<?php use_helper('I18N'); ?>
代替<?php use_helper('I18n'); ?>
(请注意上一个'n'的大写字母)。
Linux与Windows不同,区分大小写。
答案 1 :(得分:1)
你拼错了帮助者名字最后一个“N”应该是大写的。
在模板中,它应该如下所示:
<?php use_helper('I18N'); ?>
如果要修改settings.yml,它应该如下所示:
standard_helpers: [Partial, Cache, I18N]
您必须记住,symfony YAML配置文件缓存为php文件。如果不清理缓存,则不会应用更改(当然,取决于环境)。尝试使用:
php symfony cc
从命令行,它应该修复它。