Skip to content
This repository has been archived by the owner on Apr 29, 2024. It is now read-only.

Commit

Permalink
Add seeder
Browse files Browse the repository at this point in the history
  • Loading branch information
wim-web committed Jan 25, 2021
1 parent f65f070 commit 9c7c90f
Show file tree
Hide file tree
Showing 4 changed files with 89 additions and 1 deletion.
27 changes: 27 additions & 0 deletions laravel/database/seeds/ArticleSeeder.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?php

use App\Article;
use App\User;
use Illuminate\Database\Seeder;

class ArticleSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
User::query()->chunk(12000, function ($users) {

$ids = $users->pluck('id');

$attributes = [];
foreach ($ids as $id) {
$attributes[] = ['user_id' => $id, 'title' => 'title', 'body' => 'body', 'created_at' => '2000-1-1', 'updated_at' => '2020-1-1'];
}
Article::query()->insert($attributes);
});
}
}
4 changes: 3 additions & 1 deletion laravel/database/seeds/DatabaseSeeder.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ class DatabaseSeeder extends Seeder
*/
public function run()
{
// $this->call(UserSeeder::class);
$this->call(UserSeeder::class);
$this->call(ArticleSeeder::class);
$this->call(LikeSeeder::class);
}
}
29 changes: 29 additions & 0 deletions laravel/database/seeds/LikeSeeder.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?php

use App\Article;
use App\User;
use App\Like;
use Illuminate\Database\Seeder;

class LikeSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
User::query()->chunk(10000, function ($users) {

$ids = $users->pluck('id');
$a_id = Article::query()->inRandomOrder()->first('id');

$attributes = [];
foreach ($ids as $id) {
$attributes[] = ['user_id' => $id, 'article_id' => $a_id->id, 'created_at' => '2000-1-1', 'updated_at' => '2020-1-1'];
}
Like::query()->insert($attributes);
});
}
}
30 changes: 30 additions & 0 deletions laravel/database/seeds/UserSeeder.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<?php

use App\User;
use Illuminate\Database\Seeder;

class UserSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
User::newModelInstance()->forceFill(['name' => 'test', 'password' => 'test'])->save();

for ($i = 0; $i < 50; $i++) {

$attributes = [];
for ($j = 0; $j < 15000; $j++) {
$attributes[] = [
'name' => "dummy_$i", 'password' => "dummy_$i", 'created_at' => '2000-1-1', 'updated_at' => '2020-1-1'
];
}

User::query()->insert($attributes);

}
}
}

0 comments on commit 9c7c90f

Please sign in to comment.