Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 4 找不到提供程序“;“图像”;“带区域设置”;“美国”;播种时的Fzaninoto/伪造者_Laravel 4_Laravel Artisan - Fatal编程技术网

Laravel 4 找不到提供程序“;“图像”;“带区域设置”;“美国”;播种时的Fzaninoto/伪造者

Laravel 4 找不到提供程序“;“图像”;“带区域设置”;“美国”;播种时的Fzaninoto/伪造者,laravel-4,laravel-artisan,Laravel 4,Laravel Artisan,我试图使用fzaninoto/Faker为我的数据库设置种子,但是当我运行php-artisan-db:seed时,我得到以下错误 [InvalidArgumentException] 找不到区域设置为“en_US”的提供程序“映像” db:seed[--class[=“…”][--database[=“…”][--force] 我有三个应该执行的种子类,它们都没有对“Images”的引用(没有名为Images的表或字段)。这是我在DatabaseSeeder上的代码 class Databas

我试图使用
fzaninoto/Faker
为我的数据库设置种子,但是当我运行
php-artisan-db:seed
时,我得到以下错误

[InvalidArgumentException]
找不到区域设置为“en_US”的提供程序“映像”

db:seed[--class[=“…”][--database[=“…”][--force]

我有三个应该执行的种子类,它们都没有对“Images”的引用(没有名为Images的表或字段)。这是我在DatabaseSeeder上的代码

class DatabaseSeeder extends Seeder {

    protected $tables = [
        'users','posts','feedbacks'
    ];
    protected $seeders = [
        'UsersTableSeeder',
        'PostsTableSeeder',
        'FeedbacksTableSeeder'
    ];
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Eloquent::unguard();

        $this->cleanDatabase();
        foreach ($this->seeders as $seedClass)
        {
            $this->call($seedClass);
        }

    }

    private function cleanDatabase()
    {
        DB::statement('SET FOREIGN_KEY_CHECKS=0');
        foreach ($this->tables as $table)
        {
            DB::table($table)->truncate();

        }
        DB::statement('SET FOREIGN_KEY_CHECKS=1');
    }
}
播种机类别:

use Faker\Factory as Faker;
use Bicicletas\Feedbacks\Feedback;
use Bicicletas\Users\User;

class FeedbacksTableSeeder extends Seeder {
    public function run()
    {
        $faker = Faker::create();
        $usersIds = User::lists('id');
        $stars = array(1,2,3,4,5);

        foreach(range(1, 10) as $index)
        {
            Feedback::create([
                'user_id' => $faker->randomElement($usersIds, $count=1),
                'rating'  => $faker->randomElement($stars),
                'content' =>$faker->text($maxNbChars = 150),
                'created_at' =>$faker->dateTimeBetween($startDate = '-1 years', $endDate = 'now')

            ]);
        }
    }

}

use Bicicletas\Posts\Post;
use Faker\Factory as Faker;

class PostsTableSeeder extends Seeder {
    public function run()
    {
        $faker = Faker::create();

        foreach(range(1, 20) as $index)
        {
            Post::create([

            'title' => $faker->text($maxNbChars = 50),
            'slug'  =>   $faker->slug,
            'content' =>$faker->text($maxNbChars = 550),
            'created_at'=>$faker->dateTime()
            ]);
        }
    }
}


use Bicicletas\Users\User;
use Faker\Factory as Faker;

class UsersTableSeeder extends Seeder {

    public function run()
    {
        $faker = Faker::create();

        foreach(range(1, 20) as $index)
        {
            User::create([
                'firstname' => $faker->firstName,
                'lastname' =>$faker->lastName,
                'country' =>$faker->country,
                'email' =>$faker->email,
                'avatar'=>"$index.jpg",
                'password' =>'secreto'
            ]);
        }
    }

}

我以前试过这个方法,效果很好。你能解释一下这个错误吗?

播种时抛出这个错误不是因为它与种子“有关系”,而是因为Laravel在播种时执行它的引导,而你对该包有问题

如果您已经遵循,则需要在
config/app.php
中添加以下内容:

  • 添加到
    $providers

    'Intervention\Image\ImageServiceProvider'
    
  • 添加
    $alias

    'Image' => 'Intervention\Image\Facades\Image'
    
由于您已经这样做了(根据您的评论),您可能需要发布包的配置:

$ php artisan config:publish intervention/image

有这个问题的用户有很多问题。他们中的一些人用
composer dumpautoload
解决了这个问题,而另一些人有问题,因为他们有名为
Image
的模型。因此,如果这并不能解决您的问题,那么看看这个问题,它可能会有所帮助。

查看
app\config\app.php
并搜索密钥
提供者
。你有任何命名的“图像”吗?此外,编辑您的问题并添加每个播种器类的内容。最后,执行一个
composer dumpautoload
并检查它是否解决了任何问题。您好@milz谢谢您的帮助,我在app.php中有反射提供程序,但问题是,如果没有图像服务提供程序参与这些类的种子设定,为什么会出现此错误?”干预\Image\ImageServiceProvider',在Fakades中我有'Images'=>'interference\Image\Facades\Image',我已经将'Images'=>'interference\Image\Facades\Image'重命名为'Image'=>'interference\Image\Facades\Image',然后自动加载,但仍然是相同的错误谢谢您的帮助,非常感谢。我现在就来看看,让我告诉你,我有一个文件夹app\biciletas\Images,刚刚重命名为Photos,看看会发生什么,现在的错误是“[InvalidArgumentException]无法找到具有区域设置“en_US”db:seed[--class[=“…]”][--database[=“…]”][--force]”的提供商“照片”。另一件事是当我试图执行php artisan配置时:未找到发布干预/image[InvalidArgumentException]配置。配置:publish[--path[=“…”][--force]packageI已删除该目录,但仍收到相同的错误。还自动加载上一个