---
title: "Konfigurácia — Options for Laravel | Roundly"
description: "Každý konfiguračný kľúč a jeho predvolená hodnota — model, typ kľúča vlastníkov, register, cache, eventy, skupiny, autorizácia a config()."
url: https://roundly-consulting.com/sk/open-source/navody/options-for-laravel/konfiguracia
language: sk
---

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

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

# Konfigurácia

Publikovaný config/options.php v plnom znení:

```php
return [
    'model' => RoundlyConsulting\Options\Option::class,

    // Owner key type: bigint, uuid or ulid — fixed when the migration first runs.
    'key_type' => env('OPTIONS_KEY_TYPE', 'bigint'),

    'registry' => [
        // 'theme' => App\Options\ThemeOption::class,
    ],

    'cache' => [
        'enabled' => env('OPTIONS_CACHE_ENABLED', true),
        'store'   => env('OPTIONS_CACHE_STORE'),
        'ttl'     => env('OPTIONS_CACHE_TTL', 3600),
        'prefix'  => env('OPTIONS_CACHE_PREFIX', 'options'),
        'tag'     => env('OPTIONS_CACHE_TAG', 'options'),
    ],

    'events' => [
        'enabled'  => env('OPTIONS_EVENTS_ENABLED', true),
        'resolved' => env('OPTIONS_EVENTS_RESOLVED', false),
    ],

    'groups' => [
        // 'billing' => App\Settings\BillingSettings::class,
    ],

    'authorization' => [
        'enabled'  => env('OPTIONS_AUTHORIZATION', false),
        'use_gate' => env('OPTIONS_AUTHORIZATION_GATE', false),
    ],

    'config_overrides' => [
        // 'mail.from.address' => App\Options\MailFromAddressOption::class,
    ],

    'config_overrides_live' => env('OPTIONS_CONFIG_OVERRIDES_LIVE', false),
];
```

## Všetky kľúče

| Kľúč | Predvolené | Env | Účel |
| --- | --- | --- | --- |
| `model` | Option::class | — | Eloquent model, ktorý ukladá hodnoty. Musí dediť od RoundlyConsulting\\Options\\Option. |
| `key_type` | bigint | `OPTIONS_KEY_TYPE` | Typ kľúča vlastníkov — bigint, uuid alebo ulid (bez ohľadu na veľkosť písmen). Určuje typ owner\_id; nastavte ho pred migráciou. Čokoľvek iné pri spustení migrácie vyhodí InvalidConfigurationException. |
| `registry` | \[\] | — | Krátke textové kľúče → triedy nastavení, na prístup cez kľúč. |
| `cache.enabled` | true | `OPTIONS_CACHE_ENABLED` | Zapne trvalú cache naprieč requestami. |
| `cache.store` | null | `OPTIONS_CACHE_STORE` | Názov cache úložiska; null alebo prázdna hodnota (nenastavené) použije predvolené úložisko. Hodnota, ktorá nie je reťazec, vyhodí výnimku. |
| `cache.ttl` | 3600 | `OPTIONS_CACHE_TTL` | Životnosť v sekundách — celé číslo, aspoň 1; null znamená bez expirácie, prázdna hodnota (OPTIONS\_CACHE\_TTL=) sa považuje za nenastavenú a znamená 3600. Neplatná hodnota ako abc alebo 0 vyhodí výnimku namiesto tichého vypnutia cache. |
| `cache.prefix` | options | `OPTIONS_CACHE_PREFIX` | Prefix kľúčov v cache. Prázdna hodnota sa považuje za nenastavenú a použije sa predvolená; hodnota, ktorá nie je reťazec, vyhodí výnimku. |
| `cache.tag` | options | `OPTIONS_CACHE_TAG` | Cache tag, vďaka ktorému úložisko s tagmi (Redis, Memcached) pri vyprázdnení aj hneď zmaže staré záznamy. Prázdna hodnota sa považuje za nenastavenú a použije sa predvolená; hodnota, ktorá nie je reťazec, vyhodí výnimku. |
| `events.enabled` | true | `OPTIONS_EVENTS_ENABLED` | Spúšťa OptionSet / OptionForgotten. Vypnutie stlmí iba eventy — observery aj živé prepisy konfigurácie bežia ďalej. |
| `events.resolved` | false | `OPTIONS_EVENTS_RESOLVED` | Spúšťa aj OptionResolved pri každom čítaní — je ho veľa, preto je predvolene vypnutý. |
| `groups` | \[\] | — | Krátke kľúče → triedy OptionGroup, pre Options::group('kľúč'). |
| `authorization.enabled` | false | `OPTIONS_AUTHORIZATION` | Vynucuje hooky authorizeRead() / authorizeWrite() jednotlivých nastavení. |
| `authorization.use_gate` | false | `OPTIONS_AUTHORIZATION_GATE` | Zohľadní aj Gate abilities option.read / option.write, ak sú definované. |
| `config_overrides` | \[\] | — | Kľúče config() → nastavenia, ktorých uložená hodnota pri štarte prepíše konfiguráciu. |
| `config_overrides_live` | false | `OPTIONS_CONFIG_OVERRIDES_LIVE` | Pri set() / forget() znova aplikuje namapovaný kľúč v bežiacom procese. |

## Prostredie (env)

Všetko okrem modelu a máp tried sa nastavuje cez env, takže väčšina nasadení konfiguráciu vôbec nepublikuje:

```bash
OPTIONS_KEY_TYPE=bigint
OPTIONS_CACHE_ENABLED=true
OPTIONS_CACHE_STORE=redis
OPTIONS_CACHE_TTL=3600
OPTIONS_CACHE_PREFIX=options
OPTIONS_CACHE_TAG=options
OPTIONS_EVENTS_ENABLED=true
OPTIONS_EVENTS_RESOLVED=false
OPTIONS_AUTHORIZATION=false
OPTIONS_AUTHORIZATION_GATE=false
OPTIONS_CONFIG_OVERRIDES_LIVE=false
```

Prepínače typu bool prijímajú bežné zápisy v env: true / false, 1 / 0, on / off aj yes / no. Každé nastavenie sa číta prísne: nenastavený kľúč — chýbajúci, null alebo prázdny (KEY= v .env) — použije predvolenú hodnotu a akákoľvek iná neplatná hodnota vyhodí InvalidConfigurationException s názvom kľúča — nič sa nenahrádza.

## Príkaz about

Balík hlási svoju konfiguráciu do príkazu about v Laraveli. Kľúče nastavení, kľúče skupín a namapované cesty konfigurácie ukáže iba ako počty — kľúč pomenúva vaše nastavenie a jeho hodnotou môže byť token, feature flag či osobné údaje, preto sa nevypíše ani jedno:

```bash
php artisan about --only=options
```

## 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/options-for-laravel.md)
