Projekt

Obecné

Profil

Stáhnout (2.07 KB) Statistiky
| Větev: | Tag: | Revize:
1 5d28dbf4 Marek Lovčí
<?php
2
3
use Illuminate\Database\Seeder;
4 92577cfd Marek Lovčí
use Illuminate\Support\Facades\DB;
5
use Illuminate\Support\Str;
6 5d28dbf4 Marek Lovčí
7
class DatabaseSeeder extends Seeder
8
{
9
    /**
10
     * Seed the application's database.
11
     *
12
     * @return void
13
     */
14
    public function run()
15
    {
16 92577cfd Marek Lovčí
        DB::table('users')->insert([
17
            'name' => 'admin',
18
            'email' => 'admin@kaplicky.com',
19
            'email_verified_at' => now(),
20
            'password' => bcrypt('admin'),
21
            'remember_token' => Str::random(10),
22
            'created_at' => now(),
23
            'updated_at' => now(),
24
        ]);
25
26
        // Populate users
27
        factory(App\User::class, 19)->create();
28
29
        // Populate categories
30
        factory(App\Category::class, 80)->create();
31
32
        // Populate artefacts with metadata
33
        factory(App\Artefact::class, 300)->create()->each(function ($u) {
34
            $u->metadata()->saveMany(factory(App\Metadata::class, 10)->make());
35
        });
36
37
        // Get all the categories attaching up to 1 random categories to each user
38
        $categories = App\Category::all();
39
40
        // Populate the artefact_category pivot table
41
        App\Artefact::all()->each(function ($artefact) use ($categories) {
42
            $artefact->categories()->attach(
43
                $categories->random(1)->pluck('id')->toArray()
44
            );
45
        });
46
47
        // Get all the metadata attaching up to 50 random metadata to each user
48
        $artefacts = App\Metadata::all();
49
50
        // Populate the artefact_user pivot table
51
        App\User::all()->each(function ($user) use ($artefacts) {
52
            $user->likesArtefacts()->attach(
53
                $artefacts->random(rand(1, 50))->pluck('id')->toArray()
54
            );
55
        });
56
57
        // Get all the metadata attaching up to 50 random metadata to each user
58
        $metadata = App\Metadata::all();
59
60
        // Populate the metadata_user pivot table
61
        App\User::all()->each(function ($user) use ($metadata) {
62
            $user->likesMetadata()->attach(
63
                $metadata->random(rand(1, 50))->pluck('id')->toArray()
64
            );
65
        });
66 5d28dbf4 Marek Lovčí
    }
67
}