Všetky balíky
Options for Laravel
Fluent API a hromadné operácie
Options::option() vráti kontext pre jedno globálne nastavenie; Options::for($owner) obmedzí všetko, čo nasleduje, na vlastníka:
Options::option(ThemeOption::class)->set('dark');
Options::option(ThemeOption::class)->get(); // or ->value()
Options::option(ThemeOption::class)->has();
Options::option(ThemeOption::class)->forget(); // or ->reset()
Options::option(ThemeOption::class)->default();
Options::option(ThemeOption::class)->remember(fn () => 'dark');
Options::option(ThemeOption::class)->key(); // 'theme'
Options::option(ThemeOption::class)->readable(); // 'Theme'
// Owner-scoped
Options::for($user)->option(ThemeOption::class)->set('light');
Options::for($user)->get(ThemeOption::class);
Options::for($user)->set(ThemeOption::class, 'light');Options::for($owner) vráti builder PendingOptions s metódami get(), set(), has(), forget(), reset(), remember(), many(), setMany() a all() a navyše option() a key() na prácu s jedným nastavením. Options::for(null) je globálny rozsah.
Hromadné čítanie a zápis
$values = Options::many([ThemeOption::class, LocaleOption::class]);
// [ThemeOption::class => 'dark', LocaleOption::class => 'en'] — keyed by what you passed
Options::setMany([ThemeOption::class => 'dark', LocaleOption::class => 'en']);
Options::for($user)->many(['theme', 'locale']); // registered keys work too
Options::for($user)->setMany(['theme' => 'light']);
// Everything stored for a scope (raw key => value), in one query
$all = Options::all(); // global
$all = Options::for($user)->all(); // one owner- many() vráti pole s kľúčmi podľa identifikátorov, ktoré ste odovzdali — class-stringov alebo registrovaných kľúčov.
- setMany() funguje systémom všetko alebo nič: každá hodnota sa autorizuje a overí ešte pred prvým zápisom a zápisy zdieľajú jednu databázovú transakciu. Casty, eventy a observery potom platia rovnako ako pri set().
- all() funguje inak: jeden dopyt, surové uložené reťazce podľa kľúča nastavenia. Bez castov, bez predvolených hodnôt pre neuložené nastavenia a šifrované hodnoty zostanú šifrovým textom. Pri zapnutom riadení prístupu vynechá, čo aktuálny používateľ čítať nesmie.
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 kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
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.