feat: add Post model, migration, and factory

Adds the Post model belonging to Site (required, cascade-deletes with
the site) and SocialAccount (nullable, nulled out on account delete).
Foundation for the Scheduled Posts feature; later tasks build the
Livewire CRUD UI and API on top of this model.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Doar Mihai
2026-07-18 17:07:48 +03:00
co-authored by Claude Sonnet 5
parent 4293475ce1
commit f746c5d6a0
4 changed files with 190 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
<?php
namespace Database\Factories;
use App\Models\Post;
use App\Models\Site;
use Illuminate\Database\Eloquent\Factories\Factory;
class PostFactory extends Factory
{
protected $model = Post::class;
public function definition(): array
{
return [
'site_id' => Site::factory(),
'social_account_id' => null,
'type' => fake()->randomElement(Post::TYPES),
'title' => fake()->optional()->sentence(),
'body' => fake()->paragraph(),
'status' => fake()->randomElement(Post::STATUSES),
'scheduled_at' => fake()->optional()->dateTimeBetween('now', '+1 month'),
];
}
}