---
title: "Náhodné prípady a factories — Enums for Laravel | Roundly"
description: "random() vyberie náhodný prípad pre model factories, seedery a demo dáta; collect() prejde všetky prípady."
url: https://roundly-consulting.com/sk/open-source/navody/enums-for-laravel/nahodne-pripady
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Enums for Laravel](https://roundly-consulting.com/sk/open-source/navody/enums-for-laravel.md)

# Náhodné prípady a factories

random() vráti náhodný prípad — praktické pre factories, seedery a testy:

```php
NewsCategory::random(); // a random NewsCategory case
```

## V model factory

```php
namespace Database\Factories;

use App\Enums\NewsCategory;
use App\Models\Article;
use Illuminate\Database\Eloquent\Factories\Factory;

/**
 * @extends Factory<Article>
 */
final class ArticleFactory extends Factory
{
    /**
     * @return array<string, mixed>
     */
    public function definition(): array
    {
        return [
            'title' => fake()->sentence(),
            'category' => NewsCategory::random(),
        ];
    }
}
```

## Dávka pre každý prípad

collect() vráti všetky prípady ako kolekciu, takže seedovanie dávky pre každý prípad zvládnete jedným volaním:

```php
namespace Database\Seeders;

use App\Enums\NewsCategory;
use App\Models\Article;
use Illuminate\Database\Seeder;

final class ArticleSeeder extends Seeder
{
    public function run(): void
    {
        NewsCategory::collect()->each(
            fn (NewsCategory $category) => Article::factory()->count(10)->create(['category' => $category]),
        );
    }
}
```

random() používa funkciu array\_rand() z PHP, ktorá nie je kryptograficky bezpečná — používajte ju na testovacie a demo dáta, nikdy na nič, na čom závisí bezpečnosť. Na enume bez prípadov vyhodí EnumException::noCases() namiesto ValueError z PHP, takže ju zachytíte spolu s ostatnými chybami balíka.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/enums-for-laravel.md)
