web-dev-qa-db-ja.com

Laravel php artisan db:seedは「use」ステートメントエラーにつながる

php artisan db:seedを実行しようとすると、次のエラーが表示されます。

The use statement with non-compound name 'DB' has no effect

docのスニペット に基づいて、以下に含めた独自のシーダーファイルを作成しました。ご覧のとおり、use DBショートカットを使用しています-これが問題ですか?

<?php

use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
use DB;

class ClassesTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        DB::table('classes')->delete();
        DB::table('classes')->insert([
            'class_name'    => 'Test course 111',
            'class_id'      => '1',
            'location_name' => 'Barnes',
            'location_id'   => '1',
            'date'          => '2015-06-22',
            'month'         => '06/2015',
            'start_time'    => '08:00',
            'end_time'      => '16:00',
            'places'        => '19',
            'places_left'   => '19',
            'price'         => '155.00'
        ]);
    }
}
20
V4n1ll4

In PHP= seステートメントは、インポートよりもaliasのようです。したがって、ClassesTableSeederクラスは定義された名前空間では、DBクラスをインポートする必要はないため、se DBを完全に削除できます。

50
user2479930

シーダークラスでは、ページの上部にuse DBステートメントを記述する必要はありません。 config>app.phpエイリアス配列内に記述されたエイリアスは、useステートメントを必要としません。これは、シーダーに名前空間がないためです。

1
polodev