feat(announcement): create AnnouncementMedia model, factory, and migration

- Introduced the AnnouncementMedia model, removing soft deletes for a simplified structure.
- Added AnnouncementMediaFactory for generating test data with relationships to Announcement and PartnerMedia.
- Created migration for the announcement_media table without soft deletes.
This commit is contained in:
Yoga Pangestu 2025-12-12 11:30:36 +07:00
parent 2dbbe62aa9
commit b9a266d35a
3 changed files with 6 additions and 8 deletions

View File

@ -5,11 +5,10 @@
use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\SoftDeletes;
class AnnouncementUser extends Model class AnnouncementMedia extends Model
{ {
use HasFactory, SoftDeletes; use HasFactory;
protected $guarded = ['id']; protected $guarded = ['id'];

View File

@ -3,16 +3,16 @@
namespace Database\Factories; namespace Database\Factories;
use App\Models\Announcement; use App\Models\Announcement;
use App\Models\AnnouncementUser; use App\Models\AnnouncementMedia;
use App\Models\User; use App\Models\User;
use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Database\Eloquent\Factories\Factory;
/** /**
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\AnnouncementUser> * @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\AnnouncementMedia>
*/ */
class AnnouncementUserFactory extends Factory class AnnouncementMediaFactory extends Factory
{ {
protected $model = AnnouncementUser::class; protected $model = AnnouncementMedia::class;
/** /**
* Define the model's default state. * Define the model's default state.

View File

@ -19,7 +19,6 @@ public function up(): void
$table->foreignIdFor(PartnerMedia::class); $table->foreignIdFor(PartnerMedia::class);
$table->timestamp('created_at')->useCurrent(); $table->timestamp('created_at')->useCurrent();
$table->timestamp('updated_at')->nullable()->useCurrentOnUpdate(); $table->timestamp('updated_at')->nullable()->useCurrentOnUpdate();
$table->softDeletes();
}); });
} }