NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky

Všetky vlastné výnimky balíka dedia z TranslatableException, takže celú skupinu zachytíte základnou triedou. Len chybné nastavenie konfigurácie namiesto nich vyhodí InvalidConfigurationException z toolkitu:

VýnimkaKedy nastane
TranslatableExceptionZákladná trieda (RuntimeException). Vyhodí sa priamo, keď mapu jazykov nemožno zakódovať do JSON (napr. neplatné UTF-8) alebo pole vyhľadávania nie je obyčajný identifikátor.
NotATranslatableAttributeExceptionPrekladová metóda alebo scope sa zavolala pre atribút, ktorý nie je uvedený v $translatable.
InvalidLocaleExceptionKľúč jazyka pri zápise, v scope alebo v Translatable::ensureLocale() má chybný tvar — alebo nie je podporovaný pri zapnutom strict_locales (či strict: true).
InvalidTranslationValueExceptionHodnota nie je string, int ani float — ide o vnorené pole, objekt či boolean.
RoundlyConsulting\PackageToolkit\Exceptions\InvalidConfigurationExceptionHodnota konfigurácie je nepoužiteľná — fallback mimo none/fallback/any, strict_locales mimo booleovských slov, chybne tvarovaný fallback_locale alebo locales, ktoré nie sú zoznamom správne tvarovaných kľúčov jazykov. Správa uvádza kľúč.
use RoundlyConsulting\Translatable\Exceptions\InvalidLocaleException;
use RoundlyConsulting\Translatable\Exceptions\TranslatableException;

try {
    $topic->setTranslations('name', $payload);
} catch (InvalidLocaleException $e) {
    // malformed key, or an unsupported locale while strict_locales is on
} catch (TranslatableException $e) {
    // any other package error
}

Ak sa chcete výnimkám pri zápise používateľského vstupu úplne vyhnúť, mapy z requestu najprv normalizujte cez Translatable::fromInput() alebo zvalidujte cez Translatable::rules() (pozrite Vstup a validácia). Jeden jazyk z query parametra či segmentu route overte cez Translatable::ensureLocale() alebo Translatable::isSupported().

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

Odoslaní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.