【发布时间】:2014-04-19 01:28:41
【问题描述】:
我正在模型类中访问 Laravel 的辅助函数 base_path()。我正在运行 Laravel 4.1.23
我收到以下错误:
PHP Fatal error: Call to a member function make() on a non-object in /Applications/mampstack-5.4.23-0/frameworks/laravel/vendor/laravel/framework/src/Illuminate/Support/helpers.php on line 492
奇怪的是我在 phpunit 中测试了函数调用,它运行良好。任何帮助将不胜感激。
我的项目有以下依赖:
"require": {
"laravel/framework": "4.1.*",
"cpliakas/git-wrapper": "1.1.*",
"rmccue/requests": "v1.6.0",
"phpseclib/phpseclib": "0.3.*"
}
【问题讨论】:
-
不确定问题是否相关,但似乎在 Github 上的同一错误消息下存在错误,这是链接:github.com/laravel/framework/issues/854 编辑: 这里是我挖出的另一个也指向 helpers.php 文件:github.com/patricktalmadge/bootstrapper/issues/125
-
你运行 composer dump-autoload 了吗?
-
我确实运行了转储自动加载。我相信问题是我只是通过从命令行运行“php mymodel.php”来运行我的模型测试。我在类定义之后测试了一些小事情。我认为这是问题的原因是因为它适用于 phpunit。
-
这听起来很可信。直接运行模型测试意味着您绕过了关键框架组件的加载——因此是非对象。