Подтвердить что ты не робот

Переместить Laravel 5 Элегантные модели в свой собственный каталог

Laravel 5 имеет модели ORM по умолчанию в папке приложения. Я хочу переместить их в приложения/модели. Когда я это делаю, эти классы больше не встречаются.

Как заставить Laravel найти модели ORICO ORM из приложений/моделей?

4b9b3361

Ответ 1

Просто создайте папку с именем Models и переместите в нее файлы. После этого измените пространство имен моделей только с App на App\Models (обновите также способы использования) и запустите composer dump-autoload.

Ответ 2

Решение для Laravel 5.4 +


1. Переместите файлы в новый каталог

Предположим, вы хотите переместить модели на app/Models

2. Измените пространство имен моделей

Для каждого изменения модели:

namespace App;

to

namespace App\Models;

3. Измените ссылки в других файлах

Проверьте эти файлы

  • app/Http/Controllers/Auth/RegisterController.php
  • config/auth.php
  • config/services.php
  • database/factories/ModelFactory.php
  • Ваши контроллеры

И измените App/ModelExample на App/Models/ModelExample

4. Файлы автозагрузки

Выполнить composer dump-autoload

5. Поздравляем!

Ответ 3

Добавить "app/models" в раздел автозагрузки classmap composer.json

"autoload": {
    "classmap": [
        "database",
        "app/models"
    ]
}