Nal*_*roc 0 php laravel artisan
运行时php artisan migrate --seed,出现此错误:
[Symfony\Component\Debug\Exception\FatalThrowableError]
Class 'CreateCharactersTable' not found.
Run Code Online (Sandbox Code Playgroud)
这是该类:
<?php
use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
class CharacterSeeder extends Seeder
{
public function run()
{
DB::table('characters')->delete();
DB::table('characters')->insert([
'user_id' => 999,
'name' => 'Susan Strong',
'race' => 'orc',
'class' => 'assassin',
'image_location' => null,
'combat_level' => '0',
'base_str' => 6,
'base_int' => 4,
'base_apt' => 5,
'mod_str' => 9,
'mod_int' => 5,
'mod_apt' => 7,
'xp_str' => 1,
'xp_int' => 2,
'xp_apt' => 1,
'is_bot' => 1,
'created_at'=> '2017-04-02 17:53:02',
'updated_at'=> '2017-04-02 17:53:02'
]);
DB::table('characters')->insert([
'user_id' => 4,
'name' => 'Chale',
'race' => 'elf',
'class' => 'scholar',
'image_location' => null,
'combat_level' => '0',
'base_str' => 3,
'base_int' => 7,
'base_apt' => 5,
'mod_str' => 6,
'mod_int' => 10,
'mod_apt' => 6,
'xp_str' => 1,
'xp_int' => 2,
'xp_apt' => 1,
'is_bot' => 1,
'created_at'=> '2017-04-02 17:53:02',
'updated_at'=> '2017-04-02 17:53:
}
}
?>
Run Code Online (Sandbox Code Playgroud)
和播种机:
<?php
use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
use Database\Seeds\CharacterSeeder;
use Database\Seeds\ClassesTableSeeder;
use Database\Seeds\RacesTableSeeder;
use Database\Seeds\UserTableSeeder;
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$this->call(UserTableSeeder::class);
$this->call(CharacterSeeder::class);
$this->call(RacesTableSeeder::class);
$this->call(ClassesTableSeeder::class);
}
}
Run Code Online (Sandbox Code Playgroud)
运行composer dumpautoload通过但不能消除错误。当只有两个播种者(用户和角色)时,它运行良好。尽管一次又一次地查看新的播种机,但我无法确定所涉及的错误。
有什么建议让播种机运行?
谢谢。
如果手动添加了种子文件,则应首先运行composer dump-autoload。这将为您重新生成autoload_classmap.php文件,有关更多信息,请参见Composer Dump-Autoload。