首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 5型号文件夹

Laravel 5型号文件夹
EN

Stack Overflow用户
提问于 2015-04-16 23:02:35
回答 6查看 47.9K关注 0票数 33

我有一个名为models的目录在app/中放置所有的模型类。现在,我想更改以下命令输出生成类的目录

代码语言:javascript
复制
php artisan make:model SomeModel
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2015-04-16 23:21:55

你不能,而且,如果你要使用Laravel的宇宙版本,你就不应该。Laravel 5为它的所有类文件提供了一个PSR4命名约定,并且假设它是这样的。这意味着模型(和所有类)应该基于它们的全名放置。

当你说

代码语言:javascript
复制
php artisan make:model SomeModel

实际上,您正在创建一个全名为App\SomeModel的模型,因此artisan创建了以下文件。

代码语言:javascript
复制
app/SomeModel.php

如果你说

代码语言:javascript
复制
php artisan make:model 'Test\SomeModel'

您将创建一个全名为App\Test\SomeModel的模型,而Laravel将创建以下文件

代码语言:javascript
复制
app/Test/SomeModel.php

因此,您的模型的完整类名(包括名称空间)决定了类定义文件的位置。

票数 59
EN

Stack Overflow用户

发布于 2015-09-02 05:14:51

我发现它应该是:

代码语言:javascript
复制
php artisan make:model ModelFolder\\SomeModel
票数 14
EN

Stack Overflow用户

发布于 2017-06-17 04:27:57

如果要在特定文件夹上手动创建模型,请执行以下操作。如果要将模型info创建到Models文件夹中,请参见示例。在您之前创建的文件夹模型中创建名为info.php的文件。下面是您应该在info.php中编写这样的代码

代码语言:javascript
复制
<?php namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Info extends Model
{
    // your code
    protected $table = 'tb_users';
}

当然,您也可以使用Artisan命令php artisan make:model "Models\Info"

如果要调用该模型Info,则创建一个视图

代码语言:javascript
复制
<?php
$users = App\Models\Info::all();

foreach ($users as $user) {
    echo $user->name;
}

它将显示所有用户的名称。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29687412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档