コードを Laravel 5.2 から 5.3 に移動しました。DatabaseSeeder を実行する場合を除いて、すべて正常に動作しています。これは Laravel 5.2 では完全に機能していましたがphp artisan db:seed
、5.3 で実行しようとすると、シーダーが Faker を使用すると次のエラーが発生します。
[BadMethodCallException]
Call to undefined method Illuminate\Database\Query\Builder::lists()
すべてが正しくインストールされているようです。
コード例:
<?php
use App\Models\Gallery;
use App\Models\GalleryImage;
use Illuminate\Database\Seeder;
class GalleryImageTableSeeder extends Seeder
{
public function run()
{
DB::table('gallery_images')->delete();
$faker = Faker\Factory::create();
$gallery = Gallery::lists('id')->All();
foreach(range(1, 98) as $index) {
GalleryImage::create([
'page_id' => null,
'gallery_id' => $faker->randomElement($gallery),
'alt' => 'Image description',
'large' => '201508183828fh5ntu80ub-or.jpg',
'medium' => '201508183828fh5ntu80ub-lg.jpg',
'thumbnail' => '201508183828fh5ntu80ub-th.jpg',
'order' => 1,
'cover' => false,
'visibility' => 'visible',
]);
}
}
}