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

Schéma a ukladanie

Balík registruje Blueprint makro translatable(), ktoré vytvorí stĺpec jsonb. Použite ho vo vlastných migráciách:

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

Schema::create('topics', function (Blueprint $table): void {
    $table->id();
    $table->translatable('name');          // jsonb column
    $table->translatable('description')->nullable();
    $table->localizedSlug('slug');         // sluggable's macro — jsonb / json / text per engine
    $table->timestamps();
});

Makro sa registruje už vo fáze register() providera, takže je dostupné v každej migrácii. localizedSlug() je makro zo sluggable pre stĺpce slugov podľa jazyka.

Formát uloženia

Každý atribút obsahuje obyčajný JSON objekt s kľúčmi podľa jazyka — bez akéhokoľvek obalu:

{"en": "Investing", "sk": "Investovanie"}

Prázdne hodnoty a null sa nikdy neukladajú a atribút bez prekladov sa zapíše ako prázdny objekt. Riadky zapísané ručne písaným vzorom „json cast + accessor pre jazyk“ sa načítajú rovnako, preto pri prechode na tento balík netreba migrovať dáta. Nový jazyk neskôr pridáte zmenou konfigurácie — mapa jednoducho získa ďalší kľúč.

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.