Laravel Translation. Wie am besten?

  • Grüsse meine lieben,

    wollte mal wissen von denjenigen die mit Laravel arbeiten wie ihr das mit der Translation umsetzt.

    Was ist eher geeignet?

    @lang('Ich schreibe meinen Text einfach so!')

    @lang('base.ich_schreibe_meinen_text_so')

    Der Grund warum ich frage ist ich würde gerne die Möglichkeit nutzen und meine Übersetzungen in der Datenbank verwalten. Mit dem gedachte Spatie Plugin haut er mir raus das der Key zu lange ist wenn ich Variante 1 nutze. Variante 2 ist mir einfach zu aufwendig. Bei variante 1 kann ich einfach schreiben und gut ist ..

    bin gespannt

    <3

  • Go to Best Answer
  • Ich bekomme die als Autovervollständigung angezeigt, ähnliches gibt es auch für zB VS Code (war Teil des Laravel Paketes), ansonsten ja es ist eine riesige JSON Datei bei mir :D

    Sollte ich mal eine Möglichkeit finden das anders zu lösen, ist das auf alle Fälle etwas das ich tun werde.

    A red dragon falls from the heavens... Ah, that memory has been lost. A shame. It was a favorite of mine...

  • evarioo August 7, 2024 at 9:30 PM

    Selected a post as the best answer.
  • Mal eben nachgeschaut und nein, bei JSON wird kein Nested unterstützt :) .

    Ich habe eine Lösung gefunden die auch wunderbar mit nested arbeitet. Poste sobald ich etwas Zeit finde die Lösung für Laravel 11 :)

    Lösung für Laravel Lang JSON nested Files:

    1) Erstelle eine Translator Klasse unter app/Translation/Translator.php

    Folgender Inhalt für Translator.php

    2) Hänge die Klasse in app/Providers/AppServiceProvider.php an

    Folgender Inhalt für AppServiceProvider.php

    Jetzt kannst du mit

    Code
    {{ __('nested.key') }}

    oder

    Code
    @lang('nested.key')

    deine Übersetzungen in deiner Laravel App abrufen. Beachte das du deine Lang Files nun zb als de.json speicherst.

    Code
    {
    	"form": {
    		"label": {
    			"lastName": "Last name",
    			"firstName": "First Name"
    		}
        },
    }

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!