Laravel 5.6 symfony \ 组件 \ 调试 \ 异常 \ 致命可抛掷错误 (E_ERROR) 找不到类'AppUtilisateurs'



首先,我想为我的英语不好道歉,这不是我的自然语言。

因此,重命名我的一个模型后,我遇到了一个找不到类的错误。我在Stackoverflow上搜索了大量时间,但所有建议的提示都不起作用。所以我来找你寻求你的帮助,看看我们是否能找到问题所在。

将我的模型Utilisateurs重命名为Utilisateur后,我已经更改了它的每次调用,检查了autoload_classmap.php,按照我在 stackoverflow 上发现的另一个线程的建议进行了composer dump-autoload,但仍然是同样的问题,我有一个:

Symfony  Component  Debug  Exception  FatalThrowableError (E_ERROR)
Class 'AppUtilisateurs' not found

我不知道为什么 laravel想要加载Utilisateurs类而不是我重命名的Utilisateur类。我检查了迁移文件,但其中似乎没有什么奇怪的(我可能是错的(。

我是Laravel的新手,我需要一些帮助/技巧来纠正我的错误,如果有人有任何想法,欢迎您。提前感谢,我修改后的代码如下,如果您需要其他内容,请随时询问。

谢谢

Utilisateur.php重命名后:

namespace App;
use IlluminateDatabaseEloquentModel;
use IlluminateContractsAuthAuthenticatable;
use IlluminateAuthAuthenticatable as BasicAuthenticatable;
use IlluminateNotificationsNotifiable;
use IlluminateDatabaseEloquentSoftDeletes;
use ChristianKuriLaravelFavoriteTraitsFavoriteability;
class Utilisateur extends Model implements Authenticatable {
use BasicAuthenticatable;
use Notifiable;
use SoftDeletes;
use Favoriteability;
protected $dates = ['deleted_at'];
protected $fillable = [
'first_name', 
'last_name',
'email', 
'password',
'structure',
'confirmation_token', 
'email_sent',
];
public function structures(){
return $this->belongsToMany(Structure::class);
}
public function getRememberTokenName(){
return '';
}
}

迁移文件:2018_04_22_010424_create_utilisateurs_table.php

use IlluminateSupportFacadesSchema;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateDatabaseMigrationsMigration;
class CreateUtilisateursTable extends Migration
{
public function up()
{
Schema::create('utilisateurs', function (Blueprint $table) {
$table->increments('id');
$table->string('first_name');
$table->string('last_name');
$table->string('email')->unique();
$table->string('password');
$table->string('structure')->nullable();
$table->string('confirmation_token')->nullable();
$table->boolean('email_sent')->nullable();
$table->timestamps();
$table->softDeletes();
});
}

public function down()
{
Schema::dropIfExists('utilisateurs');
}
}

autoload_classmap.php的部分视图

'App\Structure' => $baseDir . '/app/Structure.php',
'App\Traits\PermTrait' => $baseDir . '/app/Traits/PermTrait.php',
'App\User' => $baseDir . '/app/User.php',
'App\Utilisateur' => $baseDir . '/app/Utilisateur.php',
'Carbon\Carbon' => $vendorDir . '/nesbot/carbon/src/Carbon/Carbon.php',

日志错误拉拉维尔

[2018-05-24 11:43:03] local.ERROR: Class 'AppUtilisateurs' not found {"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Class '\App\Utilisateurs' not found at E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\EloquentUserProvider.php:147)
[stacktrace]
#0 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\EloquentUserProvider.php(113): Illuminate\Auth\EloquentUserProvider->createModel()
#1 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\SessionGuard.php(352): Illuminate\Auth\EloquentUserProvider->retrieveByCredentials(Array)
#2 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\AuthManager.php(292): Illuminate\Auth\SessionGuard->attempt(Array)
#3 E:\Serveur\www\test\app\Http\Controllers\AccountController.php(30): Illuminate\Auth\AuthManager->__call('attempt', Array)
#4 [internal function]: App\Http\Controllers\AccountController->signIn()
#5 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Controller.php(54): call_user_func_array(Array, Array)
#6 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction('signIn', Array)
#7 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Route.php(212): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(App\Http\Controllers\AccountController), 'signIn')
#8 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Route.php(169): Illuminate\Routing\Route->runController()
#9 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Router.php(659): Illuminate\Routing\Route->run()
#10 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(30): Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#11 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Middleware\SubstituteBindings.php(41): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#12 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Routing\Middleware\SubstituteBindings->handle(Object(Illuminate\Http\Request), Object(Closure))
#13 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#14 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\VerifyCsrfToken.php(67): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#15 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle(Object(Illuminate\Http\Request), Object(Closure))
#16 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#17 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\View\Middleware\ShareErrorsFromSession.php(49): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#18 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\View\Middleware\ShareErrorsFromSession->handle(Object(Illuminate\Http\Request), Object(Closure))
#19 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#20 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Session\Middleware\StartSession.php(63): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#21 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Session\Middleware\StartSession->handle(Object(Illuminate\Http\Request), Object(Closure))
#22 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#23 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse.php(37): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#24 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle(Object(Illuminate\Http\Request), Object(Closure))
#25 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#26 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Cookie\Middleware\EncryptCookies.php(59): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#27 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Cookie\Middleware\EncryptCookies->handle(Object(Illuminate\Http\Request), Object(Closure))
#28 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#29 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(104): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#30 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Router.php(661): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#31 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Router.php(636): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
#32 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Router.php(602): Illuminate\Routing\Router->runRoute(Object(Illuminate\Http\Request), Object(Illuminate\Routing\Route))
#33 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Router.php(591): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#34 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(176): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#35 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(30): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
#36 E:\Serveur\www\test\vendor\fideloper\proxy\src\TrustProxies.php(57): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#37 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Fideloper\Proxy\TrustProxies->handle(Object(Illuminate\Http\Request), Object(Closure))
#38 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#39 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php(31): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#40 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
#41 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#42 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php(31): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#43 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
#44 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#45 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ValidatePostSize.php(27): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#46 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle(Object(Illuminate\Http\Request), Object(Closure))
#47 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#48 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode.php(51): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#49 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(151): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure))
#50 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#51 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(104): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#52 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(151): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#53 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(116): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#54 E:\Serveur\www\test\public\index.php(55): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#55 {main}
"} 

你能检查config/auth.php的行70吗?

我是怎么猜到的:

当您阅读异常的这一部分时,您会看到 laravel 正在尝试检索当前用户并将其放入模型中,我认为这意味着在与身份验证相关的配置文件中声明了错误的用户模型。

#0 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\EloquentUserProvider.php(113): Illuminate\Auth\EloquentUserProvider->createModel()
#1 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\SessionGuard.php(352): Illuminate\Auth\EloquentUserProvider->retrieveByCredentials(Array)
#2 E:\Serveur\www\test\vendor\laravel\framework\src\Illuminate\Auth\AuthManager.php(292): Illuminate\Auth\SessionGuard->attempt(Array)
#3 E:\Serveur\www\test\app\Http\Controllers\AccountController.php(30): Illuminate\Auth\AuthManager->__call('attempt', Array)

这是这个框架的一个错误,但是当当前提供程序具有价值时,您可以处理运行代码。

转到命名空间:

Illuminate\Foundation\ProviderRepository

或转到物理路径

project\vendor\laravel\framework\src\Illuminate\Foundation\ProviderRepository.php

并将编译清单函数更改为:

protected function compileManifest($providers)
{
// The service manifest should contain a list of all of the providers for
// the application so we can compare it on each request to the service
// and determine if the manifest should be recompiled or is current.
$manifest = $this->freshManifest($providers);
foreach ($providers as $provider) {
if (@$provider){
$instance = $this->createProvider($provider);
// When recompiling the service manifest, we will spin through each of the
// providers and check if it's a deferred provider or not. If so we'll
// add it's provided services to the manifest and note the provider.
if ($instance->isDeferred()) {
foreach ($instance->provides() as $service) {
$manifest['deferred'][$service] = $provider;
}
$manifest['when'][$provider] = $instance->when();
}
// If the service providers are not deferred, we will simply add it to an
// array of eagerly loaded providers that will get registered on every
// request to this application instead of "lazy" loading every time.
else {
$manifest['eager'][] = $provider;
}
}
}
return $this->writeManifest($manifest);
}

从此函数编译源错误

public function createProvider($provider)
{
if (@$provider){
return new $provider($this->app);
}
}

最新更新