---
title: "Helpery, register a Blade — Options for Laravel | Roundly"
description: "Helpery options() a setting(), krátke textové kľúče cez register a Blade direktíva @option s escapovaním výstupu."
url: https://roundly-consulting.com/sk/open-source/navody/options-for-laravel/helpery-a-register
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)

# Helpery, register a Blade

Bežné prípady pokryjú dva globálne helpery. Oba sú chránené cez function\_exists, takže ich vaša aplikácia môže nahradiť vlastnými:

```php
options();                              // OptionsManager instance
options(ThemeOption::class);            // global value
options(ThemeOption::class, $user);     // scoped value
options()->set(ThemeOption::class, 'dark');

setting('theme');                       // identical alias
setting('theme', $user);
```

## Register textových kľúčov

Zaregistrujte krátke kľúče, aby sa nastavenia dali získať podľa reťazca — hodí sa to v Blade, v UI riadenom konfiguráciou aj v CLI. Registrujte ich v service provideri:

```php
use RoundlyConsulting\Options\Facades\Options;

// In a service provider’s boot()
Options::register([
    'theme'  => ThemeOption::class,
    'locale' => LocaleOption::class,
]);

Options::key('theme')->get();
options('theme', $user);
Options::for($user)->key('theme')->set('dark');

Options::registered();            // ['theme' => ThemeOption::class, …]
Options::resolveClass('theme');   // ThemeOption::class
```

Alebo ich deklarujte v konfigurácii:

```php
// config/options.php
'registry' => [
    'theme'  => App\Options\ThemeOption::class,
    'locale' => App\Options\LocaleOption::class,
],
```

- Registrácie za behu majú prednosť pred položkami z konfigurácie s rovnakým kľúčom.
- Kľúč v registri je len alias na vyhľadanie — hodnota sa stále ukladá pod key() nastavenia.
- Kľúče s bodkou ako profile.theme sú len konvencia pomenovania; neukladajú sa ako skupiny.
- Registrované kľúče aj class-stringy prechádzajú jedným resolverom; neznámy kľúč či trieda vyhodí InvalidOptionClassName.

## Blade direktíva

```blade
{{-- registered key or class-string; output is HTML-escaped --}}
@option('theme')
@option(\App\Options\ThemeOption::class)

{{-- the arguments are passed straight to options(), so an owner works too --}}
@option('theme', auth()->user())
```

@option sa skompiluje na options(...) obalené v e(), takže výstup je HTML-escapovaný a platí riadenie prístupu. Ak vaša aplikácia už direktívu @option definuje, balík ju ponechá a vlastnú nezaregistruje.

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