Не могу засеять данные из моего плагина Laravel

Я разработал плагин Laravel, который содержит исходные данные: https://github.com/xoco70/laravel-tournament

Когда я пытаюсь засеять его внутри нового проекта laravel 5.6, с помощью:

 php artisan db:seed --class=LaravelTournamentSeeder

Я получил:

 ErrorException  : include(/Users/julien/Documents/Proyectos/test/vendor/composer/../../database/seeds/LaravelTournamentSeeder.php): failed to open stream: No such file or directory

Когда я пытаюсь создать пространство имен для всех моих файлов семян с помощью:

 namespace Xoco70\LaravelTournaments\Database\Seeds;

а затем разрушить его с помощью

 php artisan db:seed --class=Xoco70\\LaravelTournaments\\Database\\Seeds\\LaravelTournamentSeeder

Я тоже получаю сообщение об ошибке:

ReflectionException  : Class Xoco70\LaravelTournaments\Database\Seeds\LaravelTournamentSeeder does not exist

В моем плагине мой composer.json:

…
"autoload": {
  "psr-4": {
    "Xoco70\\LaravelTournaments\\": "src"
  },
  "classmap": [
    "src/"
  ]
},
…

Что я делаю не так ?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
0
122
1

Ответы 1

Я вижу в коде GitHub, что tкласс сидера не имеет пространства имен, ни другие файлы раздачи. Недостающий бит - переместить код, связанный с базой данных, в "src" после записи psr-4 в композиторе:

"psr-4": {
  "Xoco70\\LaravelTournaments\\": "src"
},

Другой вариант - добавить еще одну запись в psr-4, но это может быть неясно.

Ты прав! Внутри моего плагина в composer.json я добавил: в разделе psr-4: "Xoco70\\LaravelTournaments\\Database\\": "database". Но теперь я получаю: Unable to locate factory with name [default] [Xoco70\LaravelTournaments\Models\Venue]. Я не понимаю, потому что модель Venue определена и имеет пространство имен.

Juliatzin 15.08.2018 09:05

Похоже, до github.com/xoco70/laravel-tournament/issues/9 в репозитории была закрытая проблема с аналогичным фоном. Откуда у вас ошибка (раздача, миграция, тесты ....)? Можете ли вы предоставить более подробную информацию / трассировку?

Adrian Hernandez-Lopez 15.08.2018 10:07

Другие вопросы по теме