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

Každá výnimka, ktorou balík odmietne volanie, dedí od TagsException (RuntimeException). Zobrazujte ich cez štyri stabilné metódy namiesto znalosti jednotlivých tried: errorCode() — kód v snake_case, verejné API od verzie 1.0; status() — stav HTTP pre odkaz v tele požiadavky; isNotFound() — skupina „neexistuje“, ktorá odpovie 404, ak bol odkaz segmentom cesty; clientMessage() — preložený text, ktorý smie vidieť klient. Hlásenia pochádzajú z tags::messages v angličtine a slovenčine a nikdy neuvádzajú názov PHP triedy:

use RoundlyConsulting\Tags\Exceptions\TagsException;

try {
    $concert->attachTags($request->input('labels', []), 'label');
} catch (TagsException $e) {
    return response()->json(
        ['message' => $e->clientMessage(), 'code' => $e->errorCode()],
        $e->status(),
    );
}
VýnimkaerrorCode()status()Kedy
UnknownTagTypeExceptionunknown_tag_type / type_required404 / 422Typ, ktorý nikto nedefinoval (alebo je pred volajúcim skrytý); reťazec bez typu, keď predvolený typ neexistuje.
TagNotFoundExceptiontag_not_found422 (404 in the path)Kľúč, slug či názov bez živého štítku, ktorý volajúci smie použiť; zmazaný štítok.
TagScopeMismatchExceptiontag_not_found422 (404 in the path)Štítok iného rozsahu — navonok presne ako chýbajúci; getMessage() si presný text ponechá pre logy.
DuplicateTagExceptionduplicate_tag409Názov či ručný slug, ktorého slug drží iný štítok typu a rozsahu — uvedie slug a jazyk a pri zmazanom štítku odkáže na restore().
InvalidTagExceptioninvalid_tag422Prázdny, pridlhý či na slug nevhodný názov, nepodporovaný či chybný jazyk, zlá farba, ikona, popis, slug či pozícia, ručný slug na voľnom type, rozsah pri type len globálnom, zmena typu či vlastníka.
InvalidTagHierarchyExceptioninvalid_hierarchy422Cyklus, strom hlbší, než typ dovoľuje, rodič na plochom type, zmazaný rodič.
TagHasChildrenExceptiontag_has_children409Zmazanie, ktoré by osirelo živé deti — odovzdajte TagChildren::Reparent alebo Delete.
TagLimitExceededExceptiontag_limit_exceeded422Zápis, po ktorom by mal model viac štítkov typu, než je povolené; nezapíše sa nič.
TagTypeMismatchExceptiontag_type_mismatch422Štítok jedného typu použitý tam, kde sa čakal iný — volanie so štítkami, rodič, handle.
TagTypeNotAllowedExceptiontag_type_not_allowed422Zoznam on() typu alebo tagTypes() modelu toho druhého nepripúšťa.
UnknownMorphAliasExceptionunknown_alias422Odkaz na rozsah či model v API, ktorý povolené zoznamy nepoznajú — alebo rozsah, ktorý volajúci nesmie použiť, s rovnakou odpoveďou.
InvalidTagTypeExceptioninvalid_tag_type500Definícia typu, ktorá nemôže fungovať (pozrite Typy štítkov).
TagTypeAlreadyDefinedExceptiontype_already_defined500Druhá definícia jedného názvu s oboma miestami definície.
UnsavedTaggableExceptionunsaved_taggable500Označovanie modelu, ktorý ešte nie je uložený.
  • Chýbajúci kľúč sa klientovi zobrazí presne ako štítok iného rozsahu: clientMessage() je všeobecné „The tag does not exist.“, kým getMessage() si kľúč ponechá pre vaše logy.
  • Mimo tejto skupiny: InvalidTagsConfigurationException (konfigurácia, s ktorou balík nevie pracovať, s názvom kľúča — dedí od výnimky toolkitu, preto ju zachytávajte spolu s InvalidConfigurationException) a ReadOnlyTagsRelationException (LogicException pri zápise cez tags()).

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.