faker->sentence(3); return [ 'name' => $title, 'path' => 'documents/' . Str::slug($title) . '.pdf', 'exercice' => $this->faker->randomElement(YearsEnum::cases()), 'status' => $this->faker->randomElement(DocumentStatusEnum::cases()), 'published_at' => $this->faker->dateTimeBetween('-1 month', 'now'), 'unpublished_at' => null, ]; } /** * Ajoute automatiquement des tags à un document créé. */ public function withTags(int $count = 3): static { return $this->afterCreating(function (Document $document) use ($count) { $tags = DocumentTag::factory()->count($count)->create(); $document->tags()->sync($tags->pluck('id')); }); } /** * Ajoute automatiquement des tags à un document créé. */ public function withCategories(int $count = 3): static { return $this->afterCreating(function (Document $document) use ($count) { $cats = DocumentCategory::factory()->count($count)->create(); $document->categories()->sync($cats->pluck('id')); }); } }