我有一个名为models
的目录在app/
里面我放置了所有的模型类。现在我想改变所在的目录下面的命令输出生成的类Laravel 5 Models文件夹
php artisan make:model SomeModel
我有一个名为models
的目录在app/
里面我放置了所有的模型类。现在我想改变所在的目录下面的命令输出生成的类Laravel 5 Models文件夹
php artisan make:model SomeModel
你不能,如果你砍来Laravel的版本的宇宙,你不应该。 Laravel 5为其所有类文件提供并假定了PSR-4命名约定。这意味着模型(和所有类别)应该根据它们的全类名称来放置。
当你说
php artisan make:model SomeModel
你实际上是在创造与App\SomeModel
全名模特,所以artisan
创建下列文件。
app/SomeModel.php
如果说
php artisan make:model 'Test\SomeModel'
你会创建一个具有全名App\Test\SomeModel
模型,并Laravel将
app/Test/SomeModel.php
因此,创建下列文件,其模型的全类名(包含名称空间),用于确定类定义文件的位置。
我觉得它应该是:
php artisan make:model ModelFolder\\SomeModel
如果你想在特定的文件夹手动创建模型。示例如果您想要将info
模型创建到Models
文件夹中。创建名为info.php
的文件夹之前创建的文件夹。下面是你应该在info.php
<?php namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Info extends Model
{
// your code
protected $table = 'tb_users';
}
当然像这样写代码,你也可以使用工匠命令 php artisan make:model "Models\Info"
如果你想Info
您创建一个视图来调用模型
<?php
$users = App\Models\Info::all();
foreach ($users as $user) {
echo $user->name;
}
它会显示所有用户的名字
我在Laravel 5中试过这个,当给Mod的路径el文件,我不得不提到没有像你提到的单引号的路径。这对我有用:'php artisan make:model Test \ SomeModel' – Neel
@Alan:是否有任何具体的原因从Laravel 5中删除models目录? – Ashish
@Ashish符合PHP标准的命名空间,以及使所有应用程序类以相同方式自动加载的一致性。 –