laravel 5 autoload没有加载型号

时间:2015-02-22 11:27:10

标签: composer-php autoload laravel-5

我有这个作曲家配置:
在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。

由于

1 个答案:

答案 0 :(得分:5)

您必须使用它的命名空间实际引用模型。你可以写:

$row = new \App\Models\TemplateRow();

或者在课前添加:

use App\Models\TemplateRow;

另请注意,您甚至不必在psr-4下添加条目。如果您的目录结构遵循命名空间。要确定,请调用您的文件夹Models而不是models