2

我对 laravel 还很陌生,并且在我的应用程序中遇到了 psr-4 自动加载的问题。

我的文件夹结构:

-app
 -config
  -controllers
   -UsersController
  -Mynamespace
   -User.php

我的 composer.json 文件:

"autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/database/migrations",
        "app/database/seeds",
        "app/tests/TestCase.php"
    ],
    "psr-4": {
      "Mynamespace\\": "app/Mynamespace"
    }

然后我跑了:

composer dump-autoload

我的用户模型:

<?php namespace Mynamespace;

use Illuminate\Auth\UserTrait;
use Illuminate\Auth\UserInterface;
use Illuminate\Auth\Reminders\RemindableTrait;
use Illuminate\Auth\Reminders\RemindableInterface;
use Eloquent;

class User extends Eloquent implements UserInterface, RemindableInterface {
...

我的供应商/作曲家/autoload-psr4.php:

...
return array(
    'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'),
    'Mynamespace\\' => array($baseDir . '/app/Mynamespace'),
);

将我的 config/auth.php 更改为:

'model' => 'Mynamespace\User',

我不断收到 ReflectionException Class User does not exist 错误。请帮忙!

4

1 回答 1

0

你反射异常

类用户不存在错误

抱怨找不到名为User. 我在上面的代码中的任何地方都没有看到一个名为User定义的类。我看到一个名为 的类Mynamespace\User,但我没有看到一个名为 user 的全局类。

知道你看到这个异常的上下文会有所帮助,但我的猜测是告诉 Laravel 实例化一个全局User对象(依赖注入类型提示?通过实例化一个对象app()->make?直接实例化一个对象?)。如果没有该上下文,则不太可能有人能够为您追踪到这一点。

于 2014-11-14T23:47:48.030 回答