Используйте файлы Laravel seed и sql для заполнения базы данных
У меня есть несколько .sql файлы стран, государств и городов мира от github. Как я могу запустить их с семенными файлами Laravel, чтобы заполнить эти таблицы в моей базе данных?
2 ответов
- добавить
DB::unprepared()
к методу runDatabaseSeeder
. -
Run
php artisan db:seed
в командной строке.class DatabaseSeeder extends Seeder { public function run() { Eloquent::unguard(); $this->call('UserTableSeeder'); $this->command->info('User table seeded!'); $path = 'app/developer_docs/countries.sql'; DB::unprepared(file_get_contents($path)); $this->command->info('Country table seeded!'); } }
Я нашел пакет, который создает начальные файлы из таблиц и строк базы данных. В настоящее время он поддерживает Laravel 4 и 5:
https://github.com/orangehill/iseed
В конце концов, это в основном так просто, как это:
php artisan iseed my_table
или для нескольких случаев:
php artisan iseed my_table,another_table