Ja, Laravel kommt mit dem sehr großen & beliebten Paket namens - Faker
. Sie können dieses Beispiel mit Faker schreiben und 10 Benutzern gefällt dieses erzeugen (innen DatabaseSeeder.php
):
use DB;
use Illuminate\Database\Seeder;
use Illuminate\Database\Eloquent\Model;
use Faker\Factory as Faker;
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$faker = Faker::create();
foreach (range(1,10) as $index) {
DB::table('users')->insert([
'name' => $faker->name,
'email' => $faker->email,
'password' => bcrypt('secret'),
]);
}
}
}
Das ist es - $faker->name
eine zufällige Person Namen erzeugen, und $faker->email
- eine zufällige E-Mail. Nach dem Ausführen des Befehls php artisan db:seed
wird Ihre Datenbank mit einigen zufälligen Einträgen gefüllt.
Sie können dieses Paket in Ihrem composer.json
Datei unter require-dev
finden:
"require-dev": {
"fzaninotto/faker": "^1.6", // <------- here
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~5.0",
"symfony/css-selector": "3.1.*",
"symfony/dom-crawler": "3.1.*",
"laracasts/testdummy": "~2.0"
},
Faker viele Daten erzeugen kann, von denen einige sind unten angegeben:
dies hilft
$faker->randomDigit;
$faker->numberBetween(1,100);
$faker->word;
$faker->paragraph;
$faker->lastName;
$faker->city;
$faker->year;
$faker->domainName;
$faker->creditCardNumber;
Hoffnung!
1) Wenn ich einen echten Datenbestand mache, wo wird er gespeichert? 2) Und in diesem Fall, wenn ich 'php artisan migrate --seed' verwende, werden dann die Migrationen aktualisiert und alle echten Daten automatisch wieder eingefügt? – stack
1) In Seeder-Klassen. Oder die Seder-Klasse ruft einen Befehl auf (hängt vom Paket ab). 2) Ja. –