我有这个作曲家配置:
在classmap下:"app/models"
在psr-4下:"App\\Models\\": "app/models"
"autoload": {
"classmap": [
"database",
"app/models"
],
"psr-4": {
"App\\": "app/",
"App\\Models\\": "app/models"
}
},
"autoload-dev": {
"classmap": [
"tests/TestCase.php"
]
},
这是我的模特:
namespace App\Models;
class TemplateRow extends Model{
protected $table = "template_rows";
}
在我的控制器中我做了:$row = new TemplateRow();
我得到了课程未找到例外
我做了dump-autoload。
由于
答案 0 :(得分:5)
您必须使用它的命名空间实际引用模型。你可以写:
$row = new \App\Models\TemplateRow();
或者在课前添加:
use App\Models\TemplateRow;
另请注意,您甚至不必在psr-4
下添加条目。如果您的目录结构遵循命名空间。要确定,请调用您的文件夹Models
而不是models