Jednoduchý e-shop Laravel 5.1 část 2
UPDATE: Začala jsem novy seriál Jednoduchý e-shop Laravel 5.3
Dnes si jen naplníme databázi kategoriemi a produkty v adresáři database/seeds si upravíme DatabaseSeeder na
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
class DatabaseSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { Model::unguard(); $this->call(ProductTableSeeder::class); $this->call(CategoryTableSeeder::class); Model::reguard(); } } |
a do stejného adresáře přidáme dva nové soubory CategoryTableSeeder.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<?php use Illuminate\Database\Seeder; use Illuminate\Database\Eloquent\Model; use App\Category; class CategoryTableSeeder extends Seeder { public function run() { DB::table('categories')->delete(); Category::create(array( 'name'=>'Pánské', 'slug'=>'panske', )); Category::create(array( 'name'=>'Dámské', 'slug'=>'damske', )); Category::create(array( 'name'=>'Dětské ponožky', 'slug'=>'detske', )); } } |
a ProductTableSeeder.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
<?php use Illuminate\Database\Seeder; use Illuminate\Database\Eloquent\Model; use App\Product; class ProductTableSeeder extends Seeder { public function run() { DB::table('products')->delete(); Product::create(array( 'category_id'=>1, 'name'=>'Treking ponožky', 'description'=>'Nádeherné pánské ponožky na všechny nožky', 'slug'=>'treking_ponozky', 'price'=>'13.40', )); Product::create(array( 'category_id'=>2, 'name'=>'Dámské ponožky', 'description'=>'Nádeherné dámské ponožky na všechny nožky', 'slug'=>'damske_ponožky', 'price'=>'25.50', )); Product::create(array( 'category_id'=>3, 'name'=>'Dětské ponožky', 'description'=>'Nádeherné dětské ponožky na všechny nožky', 'slug'=>'detske_ponozky', 'price'=>'40', )); } } |
1 |
composer dump-autoload |
ve složce app připravíme Model pro Category a Product
1 2 3 4 5 6 7 8 9 10 |
<?php namespace App; use Illuminate\Database\Eloquent\Model; class Category extends Model { protected $fillable = ['name', 'slug']; } |
1 2 3 4 5 6 7 8 9 10 |
<?php namespace App; use Illuminate\Database\Eloquent\Model; class Product extends Model { protected $fillable = ['category_id', 'name', 'slug', 'price']; } |
1 |
php artisan db:seed |
a tímto jsme seeder spustili