---
title: "Možnosti pre select — Enums for Laravel | Roundly"
description: "toOptions() a toArray() zostavia mapu hodnota => popis pre selecty v Blade, formulárové komponenty, JSON aj odpovede API."
url: https://roundly-consulting.com/sk/open-source/navody/enums-for-laravel/moznosti-pre-select
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)

# Možnosti pre select

toOptions() vráti kolekciu hodnota => popis pripravenú pre element <select> alebo formulárový komponent; toArray() je tá istá mapa ako obyčajné pole pre JSON a odpovede API:

```php
NewsCategory::toOptions();
// Collection: ['hot-news' => 'Hot News', 'regular-news' => 'Regular News', 'private-news' => 'Private News']

NewsCategory::toArray();
// ['hot-news' => 'Hot News', 'regular-news' => 'Regular News', 'private-news' => 'Private News']
```

## Nie v konfiguračných súboroch

Popisy sa prekladajú, preto možnosti zostavujte za behu — v controlleroch, views a resources — a nie v súbore config/\*.php: konfigurácia sa načíta skôr, než existuje prekladač, a cachovaná konfigurácia by popisy zmrazila v jednom jazyku. Do konfiguračného súboru patria hodnoty bez prekladu z values():

```php
use App\Enums\NewsCategory;

// config/news.php — translation-free, safe to cache
return [
    'categories' => NewsCategory::values()->all(),
];
```

## Vo formulári v Blade

Odovzdajte možnosti do view a vykreslite ich — kľúče sú presne tie hodnoty, ktoré prijme validačné pravidlo:

```php
use App\Enums\NewsCategory;
use Illuminate\Contracts\View\View;

final class CreateArticleController
{
    public function __invoke(): View
    {
        return view('articles.create', [
            'categories' => NewsCategory::toOptions(),
        ]);
    }
}
```

```blade
<select name="category">
    @foreach ($categories as $value => $label)
        <option value="{{ $value }}" @selected(old('category') === $value)>{{ $label }}</option>
    @endforeach
</select>
```

Popisy sa riadia aktívnym jazykom, takže preložená aplikácia vykreslí preložené možnosti bez ďalšieho kódu. Pri čistom enume sú kľúčmi názvy prípadov; pri celočíselnom enume sú kľúče celé čísla.

## 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)
