提问人:Chico3001 提问时间:11/22/2021 最后编辑:Chico3001 更新时间:11/22/2021 访问量:465
Laravel - 找不到命名空间中的类
Laravel - class in namespace not found
问:
我有这个模型类(文件名为Audit.php):
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
abstract class AuditStatus
{
const UNKNOWN = "UNKNOWN";
const ERROR = "ERROR";
const WARNING = "WARNING";
const MSG = "MESSAGE";
const EXCHANGE_UPDATE = "EXCHANGE_UPDATE";
const PRICE_UPDATE = "PRICE_UPDATE";
}
class AuditCodes extends AuditStatus
{
}
class Audit extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = ['action', 'msg'];
public static function Add($action, $msg){
(new static)::insert(['action'=>$action, 'msg' => $msg]);
}
}
我试图发出这样的新命令:
<?php
namespace App\Console\Commands;
use App\Models\AuditCodes;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;
class PriceCreate extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'price:create';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Create prices';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle()
{
dd(AuditCodes::MSG);
}
}
但是当我运行命令时,编译器抛出以下错误:
Error
Class "App\Console\Commands\App\Models\Audit\Audit_Codes" not found
at C:\xampp\htdocs\bintest\app\Console\Commands\PriceCreate.php:46
谁能帮我如何声明我的班级?
谢谢!!!
答:
0赞
Fernando Rubio
11/22/2021
#1
尝试在自己的文件中声明每个类。
我的意思是,如果你有三个类:Audit、AuditCodes 和 AuditStatus
目录中还将有三个不同的文件,例如 和 。App\Models\
App\Models\Audit.php
App\Models\AuditCodes.php
App\Models\AuditStatus.php
它应该是解决你的问题。
评论
1赞
Tim Lewis
11/22/2021
这已经通过我的最新评论添加为建议。请不要将其作为答案发布,直到提出问题的人有机会尝试将其作为解决方案,因为如果这是不正确的,您的答案将被否决并被删除。
0赞
Tim Lewis
11/22/2021
你很幸运,这是正确的解决方案,但请尽量遵循 Stackoverflow 上的预期行为准则。发布别人的评论作为答案通常是不受欢迎的。
1赞
itachi
11/22/2021
除非是逐字复制另一个答案,否则任何答案都不应被视为从其他答案复制而来。此外,根据现有的行为准则,如果成员是新成员,那么称呼该人的语气应该有点柔和和热情。这在元宇宙中已经讨论得死去活来。
评论
dd(\App\Models\Audit_Codes::MSG)
dd(Audit_Codes::MSG)
Audit_Codes
AuditCode
\Audit
namespace App\Models;