目标 class [Database\Seeders\UsersTableSeeder] 不存在
Target class [Database\Seeders\UsersTableSeeder] does not exist
我收到错误消息“目标 class [Database\Seeders\UsersTableSeeder] 不存在”,我无法弄清楚原因。我已经尝试过针对类似问题发布的解决方案,其中 none 对我有用。
这是我的 composer.json autoload/classmap 设置
"autoload": {
"psr-4": {
"App\": "app/"
},
"classmap": [
"database/seeders",
"database/factories"
]
},
UsersTableSeeder class
<?php
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Hash;
class UsersTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('users')->insert([
'fname' => 'Billy',
'lname'=> 'Bob',
'email' => 'billy@gmail.com',
'password' => Hash::make('12345678'),
]);
}
}
DatabaseSeeder class
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
// \App\Models\User::factory(10)->create();
$this->call(UsersTableSeeder::class);
}
}
您在 UsersTableSeeder
class 中缺少命名空间。
<?php
namespace Database\Seeders;
...
这将使自动加载器找到另一个播种器,因为它们与 DatabaseSeeder
具有相同的命名空间。
注:运行composer dump-autoload
之后。
我收到错误消息“目标 class [Database\Seeders\UsersTableSeeder] 不存在”,我无法弄清楚原因。我已经尝试过针对类似问题发布的解决方案,其中 none 对我有用。
这是我的 composer.json autoload/classmap 设置
"autoload": {
"psr-4": {
"App\": "app/"
},
"classmap": [
"database/seeders",
"database/factories"
]
},
UsersTableSeeder class
<?php
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Hash;
class UsersTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('users')->insert([
'fname' => 'Billy',
'lname'=> 'Bob',
'email' => 'billy@gmail.com',
'password' => Hash::make('12345678'),
]);
}
}
DatabaseSeeder class
<?php
namespace Database\Seeders;
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
// \App\Models\User::factory(10)->create();
$this->call(UsersTableSeeder::class);
}
}
您在 UsersTableSeeder
class 中缺少命名空间。
<?php
namespace Database\Seeders;
...
这将使自动加载器找到另一个播种器,因为它们与 DatabaseSeeder
具有相同的命名空间。
注:运行composer dump-autoload
之后。