配置Models目录
laravel5
去掉了models
目录,新版本将Eloquent
的模型User.php
放置到app
目录下,但我还是习惯将所有的模型文件统一到Models
目录中。
许多初学者都会困惑 Laravel 为什么没有 models 目录,这是有意而为之的。因为 models 这个词对不同人而言有不同的含义,容易造成歧义,有些开发者认为应用的模型指的是业务逻辑,另外一些人则认为模型指的是与数据库的交互。正是因为如此,我们默认将 Eloquent 的模型放置到 app 目录下,从而允许开发者自行选择放置的位置。 —— Laravel5官方文档
app
目录下创建Models
文件夹composer.json->autoload->classmap
添加该目录
"autoload": {
"classmap": [
"database",
"app/Models"
],
...
}
- 修改
app/User.php
的命名空间为App/Models
,并将该文件移动到Models
目录中 - 修改
Auth
配置文件config/auth.php
中User
模型的命名空间
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
...
]
添加模型
至此models相关配置就完成了,使用artisan
添加模型时命令如下:
#添加国家模型
$ php artisan make:model Models/Country