我想在表中放一些数据,所以我想使用DatabaseSeeder但是当我尝试:php artisan db:seed出现这个错误:
ReflectionException : Class DatabaseSeeder does not exist
at /home/bruno/projetconcert/vendor/laravel/framework/src/Illuminate/Container/Container.php:767
763| if ($concrete instanceof Closure) {
764| return $concrete($this, $this->getLastParameterOverride());
765| }
766|
`enter code here`> 767| $reflector = new ReflectionClass($concrete);
我已经尝试过编写器转储自动加载或更改命名空间或使用" autoload"中的另一个目录。在composer.json但没有任何工作...
这里有2个文件:
<?php
namespace database\seeds;
namespace projetconcert;
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$this->call(CategoryPlaceSeeder::class);
}
}
第二个:
<?php
namespace database\seeds;
namespace projetconcert;
use Illuminate\Database\Seeder;
use DB;
class CategoryPlaceSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
DB::table('category_places')->insert([
[
'id' => 1,
'category_name' => 'balcon',
],
[
'id' => 2,
'category_name' => 'terasse',
],
[
'id' => 3,
'category_name' => 'debout',
],
]);
}
}
如果有人有任何想法,那对我的项目有帮助。感谢
答案 0 :(得分:1)
删除
namespace database\seeds;
namespace projetconcert;
来自这些文件。
顺便说一句,您可以为每个文件定义多个名称空间,但不建议这样做,这不是您应该如何或为什么这样做。有关详细信息,请参阅此处:http://php.net/manual/en/language.namespaces.definitionmultiple.php