---
title: "Preložiteľné popisy — Permissions for Laravel | Roundly"
description: "Popisy rolí a oprávnení v jednotlivých jazykoch cez translatable-for-laravel, s premysleným a konfigurovateľným fallbackom."
url: https://roundly-consulting.com/sk/open-source/navody/permissions-for-laravel/prelozitelne-popisy
language: sk
---

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

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

# Preložiteľné popisy

Atribút description na modeloch Role aj Permission je plnohodnotný preložiteľný atribút postavený na translatable-for-laravel. Ukladá sa ako JSON mapa jazykov (jsonb) a číta sa ako obyčajný reťazec pre aktuálny jazyk aplikácie. Nič nemusíte zapájať — trait je už použitý:

```php
use Illuminate\Support\Facades\App;

$permission->update(['description' => ['en' => 'View users', 'sk' => 'Zobraziť používateľov']]);

App::setLocale('sk');
$permission->description;              // "Zobraziť používateľov"  (current locale)

App::setLocale('en');
$permission->description;              // "View users"

$permission->getTranslations('description'); // ['en' => 'View users', 'sk' => 'Zobraziť …']
$permission->getTranslation('description', 'sk'); // "Zobraziť používateľov"
```

Pole podľa jazykov nastaví viac jazykov naraz; samotný reťazec nastaví iba aktuálny jazyk:

```php
App::setLocale('sk');

$role->description = 'Správca';   // a bare string writes the current locale only
$role->save();

$role->getTranslations('description'); // ['sk' => 'Správca']

$role->setTranslation('description', 'en', 'Administrator')->save();
```

toArray(), toJson() aj API Resources vracajú reťazec pre aktuálny jazyk, rovnako ako prístup k atribútu — nie surovú JSON mapu.

## Režimy fallbacku

Ak aktuálny jazyk hodnotu nemá, o tom, kam až čítanie siahne, rozhoduje permissions.description\_fallback (env PERMISSIONS\_DESCRIPTION\_FALLBACK):

| Režim | Reťazec | Poznámka |
| --- | --- | --- |
| `Fallback` | aktuálny jazyk → fallback\_locale aplikácie → null | Predvolený. Popis, ktorý ste pre daný jazyk nepreložili, nikdy nezobrazí obsah z nesúvisiaceho jazyka. |
| `None` | aktuálny jazyk → null | Iba presne zhodný jazyk. |
| `Any` | aktuálny jazyk → fallback\_locale aplikácie → prvý dostupný jazyk | Popis nikdy nie je prázdny, no nepreložená hodnota sa môže zobraziť v inom jazyku. Zapnite vedome. |

Popisy sú označenia pre vývojárov a administrátorov, nie osobné údaje, takže Any je rozumná voľba — predvolená však nie je, pretože tiché siahnutie do nesúvisiaceho jazyka prekvapí:

```bash
# Opt into first-available fallback (descriptions never render blank):
PERMISSIONS_DESCRIPTION_FALLBACK=any
```

Ak chcete režim nastaviť len pre jeden model, deklarujte $translatableFallbackMode vo vlastnej podtriede a zaregistrujte ju v permissions.models.role alebo permissions.models.permission. Konfigurácia vlastnosť vyplní, iba keď je null, takže explicitný režim modelu má vždy prednosť pred description\_fallback:

```php
use RoundlyConsulting\Permissions\Models\Role;
use RoundlyConsulting\Translatable\Enums\FallbackMode;

final class AppRole extends Role
{
    protected ?FallbackMode $translatableFallbackMode = FallbackMode::None;
}
```

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