Php Laravel在应用程序名称空间之外创建模型

Php Laravel在应用程序名称空间之外创建模型,php,laravel,laravel-5.8,laravel-artisan,Php,Laravel,Laravel 5.8,Laravel Artisan,我想使用命令php artisan make:model User在域文件夹中创建用户。尽管如此,它最终还是会出现在应用程序文件夹中 我已经试过了: php artisan make:model Domain\User php artisan make:model Domain\\User php artisan make:model\\Domain\\User php artisan make:模型域/用户 应用程序文件夹: app | +-- App | | +

我想使用命令
php artisan make:model User
在域文件夹中创建用户。尽管如此,它最终还是会出现在应用程序文件夹中

我已经试过了:

  • php artisan make:model Domain\User
  • php artisan make:model Domain\\User
  • php artisan make:model\\Domain\\User
  • php artisan make:模型域/用户
应用程序文件夹:

app
 |    
 +-- App
 |
 |    
 +-- Domain
 |
 |    
 +-- Http
编写器文件:

"autoload": {
    "psr-4": {
      "App\\": "app/App/",
      "Domain\\": "app/Domain/",
      "Http\\": "app/Http/",
      "Support\\": "app/Support/"
    },
更新


php artisan make:model../Domain/User
解决了模型的问题。在Laravel 5.4或更高版本中,我仍然遇到控制器
php artisan make:controller../Http/UserController

的问题。您可以创建如下所示

  php artisan make:model "Domain\User"
使用“(双引号)或“(单引号)创建模型

看这里


不确定为什么需要在默认位置之外创建模型

Artisan make命令将根据您运行的命令尝试将文件存储在标准位置

例如,
php artisan make:model User
将在
app
目录(模型的默认目录)中创建模型。因此,假设模型的目标是上面的一个目录,并且具有名称域,则可以运行以下命令:

php artisan make:model ../Domain/User
请注意,
。/Domain/
相对于该命令的默认位置

对于控制器,知道默认目录是
app/http/controller
,并且您想在
Domain/http/controller
中生成控制器,可以使用以下命令:

php artisan make:model ../Domain/User
php-artisan-make:controller../../../Domain/Http/UserController

请注意,这并不常见,也不符合标准


也许这有助于你实现你的目标

谢谢,这很有效。名称空间不正确,但可以。你需要在哪里创建控制器?在我的Http文件夹中。我也尝试在我的域文件夹中创建一个控制器,但文件会转到应用文件夹。看看我更新的答案。希望这有帮助。不,这对我来说不起作用还是我,还是一样的结果。