質問させてください。
laravelの青本第2版で独学しています。
マイグレーションで作成したテーブルにシーディングでデータを挿入したいのですが、ターミナル上にはDatabase seeding completed successfully.
と表示されるのに、テーブルにデータが入らず、解決方法を探しています。
具体的には、
1.$ php artisan db:seed Database seeding completed successfully.
、
2.$ php artisan db:seed --class=DatabaseSeeder Database seeding completed successfully.
、
1と2の場合、シーディングは成功しているようなのですがデータは入らず、
3.php artisan db:seed --class=PeopelTableSeeder
こう打ち込んだ場合には、
laravel
1 2 Illuminate\Contracts\Container\BindingResolutionException : Target class [PeopelTableSeeder] does not exist. 3 4 at /Users/hoge/Desktop/laravelapp/vendor/laravel/framework/src/Illuminate/Container/Container.php:805 5 801| 6 802| try { 7 803| $reflector = new ReflectionClass($concrete); 8 804| } catch (ReflectionException $e) { 9 > 805| throw new BindingResolutionException("Target class [$concrete] does not exist.", 0, $e); 10 806| } 11 807| 12 808| // If the type is not instantiable, the developer is attempting to resolve 13 809| // an abstract type such as an Interface or Abstract Class and there is 14 15 Exception trace: 16 17 1 ReflectionException::("Class PeopelTableSeeder does not exist") 18 /Users/hoge/Desktop/laravelapp/vendor/laravel/framework/src/Illuminate/Container/Container.php:803 19 20 2 ReflectionClass::__construct("PeopelTableSeeder") 21 /Users/hoge/Desktop/laravelapp/vendor/laravel/framework/src/Illuminate/Container/Container.php:803 22 23 Please use the argument -v to see more details.
「クラスが存在しない」というエラーが出ます。
試したこと
composer dump-autoload
は試しましたが、変化なし。
「laravel Target class does not exist」で検索して、英語サイトを色々見たところ、「名前空間の記述が間違ってるんじゃないか」や「useの行を消したら解決した」などのアドバイスがあったので、記述ミスを探したり、行のコメントアウトを試したのですが、変化なしです。
アドバイスを頂けるとありがたいです。
よろしくお願いします。
環境
mac OS catalina ver10.15.2
laravel 6.11.0
Composer version 1.9.2
SQLite version 3.28.0
laravelのローカル環境
コード
PeopleTableSeeder
1<?php 2 3use Illuminate\Database\Seeder; 4use Illuminate\Support\Facades\DB; 5 6class PeopleTableSeeder extends Seeder 7{ 8 /** 9 * Run the database seeds. 10 * 11 * @return void 12 */ 13 public function run() 14 { 15 DB::table('people')->insert([ 16 [ 17 'name' => 'taro', 18 'mail' => 'taro@yamada.jp', 19 'age' => 12, 20 ], 21 [ 22 'name' => 'hanako', 23 'mail' => 'hanako@flower.jp', 24 'age' => 34, 25 ], 26 [ 27 'name' => 'sachiko', 28 'mail' => 'sachiko@happy.jp', 29 'age' => 56, 30 ], 31 ]); 32 } 33} 34
DatabaseSeeder
1<?php 2 3//use Illuminate\Database\Seeder; 4 5class DatabaseSeeder extends Seeder 6{ 7 /** 8 * Seed the application's database. 9 * 10 * @return void 11 */ 12 public function run() 13 { 14 $this->call(PeopelTableSeeder::class); 15 } 16} 17

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/28 07:12