laravel 5 自动加载不加载模型
laravel 5 autoload not loading models
我有这个作曲家配置:
class地图下:"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();
,我得到了 class 未找到异常。
我做了转储自动加载。
谢谢
您必须实际引用模型及其命名空间。你可以写:
$row = new \App\Models\TemplateRow();
或者在 class 之前添加:
use App\Models\TemplateRow;
另请注意,您甚至不必在 psr-4
下添加条目。如果您的目录结构遵循命名空间。为了确定,将您的文件夹命名为 Models
而不是 models
我有这个作曲家配置:
class地图下:"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();
,我得到了 class 未找到异常。
我做了转储自动加载。
谢谢
您必须实际引用模型及其命名空间。你可以写:
$row = new \App\Models\TemplateRow();
或者在 class 之前添加:
use App\Models\TemplateRow;
另请注意,您甚至不必在 psr-4
下添加条目。如果您的目录结构遵循命名空间。为了确定,将您的文件夹命名为 Models
而不是 models