diff --git a/app/Models/Banner.php b/app/Models/Banner.php index 1f96f01..467a09f 100644 --- a/app/Models/Banner.php +++ b/app/Models/Banner.php @@ -10,6 +10,9 @@ use Illuminate\Support\Facades\Storage; use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Factories\HasFactory; +/** + * 广告图 + */ class Banner extends Model { use Filterable; diff --git a/app/Models/BannerPlace.php b/app/Models/BannerPlace.php index 83a04f4..12401a6 100644 --- a/app/Models/BannerPlace.php +++ b/app/Models/BannerPlace.php @@ -5,6 +5,9 @@ namespace App\Models; use Illuminate\Database\Eloquent\Model; use EloquentFilter\Filterable; +/** + * 广告位 + */ class BannerPlace extends Model { use Filterable; diff --git a/database/factories/BannerFactory.php b/database/factories/BannerFactory.php new file mode 100644 index 0000000..0b9113d --- /dev/null +++ b/database/factories/BannerFactory.php @@ -0,0 +1,29 @@ + + */ +class BannerFactory extends Factory +{ + protected $model = Banner::class; + + /** + * Define the model's default state. + * + * @return array + */ + public function definition() + { + return [ + 'name' => $this->faker->sentence, + 'picture' => 'https://via.placeholder.com/600x400.png', + 'place_id' => BannerPlace::inRandomOrder()->value('id'), + 'published_at' => now(), + ]; + } +} diff --git a/database/seeders/BannerSeeder.php b/database/seeders/BannerSeeder.php new file mode 100644 index 0000000..672453e --- /dev/null +++ b/database/seeders/BannerSeeder.php @@ -0,0 +1,28 @@ + 'h5-home-banner', 'name' => '首页广告位'], + ]; + + Banner::truncate(); + BannerPlace::truncate(); + BannerPlace::insert($places); + (new BannerFactory())->count(5)->create(); + } +}