在我的Laravel应用程序中,我在app目录
中创建了Acme \ fooDir目录我试图在fooDir中调用模型 - " barModel" -
//app/Acme/fooDir/test.php
$barM = new barModel;
但我收到此错误
Class 'Acme\fooDir\barModel' not found
这是我的应用结构
app
-app/Acme
--app/Acme/fooDir
---app/Acme/fooDir/test.php (this is the file that could load the barModel)
-app/models
--app/model/barModel.php (this is the model i am trying to use)
我在composer.json中添加了自动加载
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php"
],
"psr-0":
{
"Acme": "app/"
}
和 我已经运行了命令
composer dump-autoload -o
和
php artisan dump-autoload
但问题没有解决,我仍然得到同样的错误
Class 'Acme\fooDir\barModel' not found
任何想法?
答案 0 :(得分:1)
使用namespace
时,所有课程都会在namespace
内调用。
如果您想在barModel
中使用Acme/fooDir/test.php
,则需要在use barModel;
行之后使用namespace
。
<?php
namespace Acme\fooDir;
use barModel;
class test {
}
答案 1 :(得分:1)
两件事。
1,您是否已将您的类命名为,
<?php namespace Acme\FooDir;
class Test ...
2,你是否在课堂上使用
<?php namespace Acme\FooDir;
use \BarModel
class Test ...
答案 2 :(得分:1)