当前位置: 首页 > 知识库问答 >
问题:

Laravel 5类数据库Seeder在运行php时找不到Artisan db:种子

上官彬
2023-03-14

我是新的Laravel,当我运行php工匠db:种子我收到以下消息:

[ReflectionException]类DatabaseSeeder不存在

我已经运行了composer dump自动加载,但没有任何结果。我的类位于默认文件夹/种子中

类中的代码:

<?php namespace database\seeds;

use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
use App\User;
use App\Country; 

class DatabaseSeeder extends Seeder {

    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Model::unguard();

        $this->call('CountryTableSeeder');
        $this->call('UserTableSeeder');
    }


}

class UserTableSeeder extends Seeder {

    public function run() {
        DB::table('users');

        User::Create(['username' => 'Bart', 'email'=>'bart@example.com', 'password' => Hash::make('password')]); 
    }
}

class CountryTableSeeder extends Seeder { 
    public function run() {
        DB::table('country');

        Country::Create(['country_name' => 'Nederlander']);
    }
}

我做错了什么?

共有2个答案

唐阳飇
2023-03-14

如果您已经尝试了所有其他方法,但仍然得到类DatabaseSeeder不存在,请查看您的编写器。json

应该有一个类似以下内容的部分:

    "autoload": {
        "classmap": [
            "app/Library",
            "app/Models"
        ],
...

您应该在这里再添加两行,告诉autoloader它还应该在哪里查找您的类。

所以最终结果将是:

    "autoload": {
        "classmap": [
            "app/Library",
            "app/Models",
            "database/seeds",
            "database/migrations"
        ],
...

这将同时添加种子迁移目录到你的autoloader类路径。

厍浩广
2023-03-14

首先,您应该删除名称空间数据库\seeds 如@JoeCoder在评论中建议的那样。

第二件事是,你不应该把很多类放在一个文件中(就像你在看你的问题时所做的那样)。每个类都应该放在单独的文件中。

 类似资料:
  • 其他人有这个奇怪的问题吗?错误消息: 致命错误:未捕获异常“exception”,消息为“DateTime::\uuu construct():无法分析位置17(A)处的时间字符串(2016年1月18日美国/纽约凌晨00:00):在数据库中找不到时区 异常:DateTime::_构造():未能分析位置17(A)处的时间字符串(2016年1月18日美国/纽约凌晨00:00):在数据库中找不到时区 原

  • Springboot在IDEA运行没有问题,但是打包jar后在本地终端java -jar就无法访问数据库请求数据了 这是我的applocation.yml 我的application.properyies spring.application.name=demo 我IDEA上无论连的自己本地库还是云服务宝塔上面的公网都可以,就是内网不行,但是应该接公网就可以吧?我该怎么解决?

  • 只是试图在signup.blade.php中找不到的Laravel类“form”中创建一个简单表单 这是web.php 这是signup.blade.php 我是否遗漏了任何或语句或此处有何错误谢谢!

  • 我使用NetBeans的教程在java中创建了一个程序,它在Windows中运行得很好。但是,当我尝试运行相同的在Linux(RedHat)中,我遇到以下异常: 线程“main”java中出现异常。lang.UnsupportedClassVersionError:JVMCFRE003主版本错误;类=我的/数字编辑/数字编辑UI,偏移量=6 通过运行此命令: java-jar NumberAddi

  • 我有这个pom.xml文件: 我有一个主要文件: 然后它进行编译,但如果使用运行它,则会出现以下运行时错误: 线程“main”java.lang.NoClassDeffounder中出现异常错误:com/google/gson/gson at suman.app.main(app.java:17)原因:java.lang.ClassNotFoundexception:com.google.gson