Chciałem dowiedzieć się czego używacie do tłumaczeń aplikacji (nie danych na bazie) ?
I18n czy fast_gettext ?
Jakie macie doświadczenia z oboma narzędziami? Jakie mają wady i zalety? Czy moglibyście podać jakieś aplikacje, które używają ich w sposób jak najbardziej bliski ich przeznaczeniu i sposobowi korzystania z nich ?
I18n. Oraz pamiętać, że od Rails 2.2 można używać (bez żadnych dodatków) lokalizowanych szablonów (show.html.erb, show.pl.html.erb)
No ale lokalizowane szablony to słabizna zwykle. Są ok jak masz dużo tekstu do przetłumaczenia i prosty widok. Ale jak złożony widok i malo tekstu to nie jest to zbyt szczęśliwe rozwiązanie.
i18n po prostu działa. Pozwala wygodnie tłumaczyć komunikaty AR i inne wbudowane teksty. Na http://guides.rubyonrails.org/i18n.html jest wszystko dokładnie opisane. Na https://github.com/svenfuchs/rails-i18n znajdziesz gotowe tłumaczenia w wielu językach.
Jeśli wiele nazw atrybutów modeli powtarza się to do ich tłumaczenia dobrze sprawdza się takie podejście:
pl:
attribute: &attributes
name: Nazwa
password: Hasło
password_confirmation: Potwierdź hasło
# ...
activerecord:
attributes:
user: *attributes
project: *attributes
# ...
Dzięki temu łatwo dostać też tłumaczenie atrybutu - t(‘attribute.password’).
I18n po prostu działa. Ważne, żeby być konsekwentnym w tworzeniu pliku. My stosujemy zagłębienie kontroler/akcja/tekst_na_stronie dzięki czemu wiadomo od razu, gdzie szukać wszystkich tekstów związanych z danych widokiem.
@hekto5 Dzięki, nie znałem.
[quote=hekto5]i18n po prostu działa. Pozwala wygodnie tłumaczyć komunikaty AR i inne wbudowane teksty. Na http://guides.rubyonrails.org/i18n.html jest wszystko dokładnie opisane. Na https://github.com/svenfuchs/rails-i18n znajdziesz gotowe tłumaczenia w wielu językach.
Jeśli wiele nazw atrybutów modeli powtarza się to do ich tłumaczenia dobrze sprawdza się takie podejście:
pl:
attribute: &attributes
name: Nazwa
password: Hasło
password_confirmation: Potwierdź hasło
# ...
activerecord:
attributes:
user: *attributes
project: *attributes
# ...
Dzięki temu łatwo dostać też tłumaczenie atrybutu - t(‘attribute.password’).[/quote]
Czy coś zmieniło w i18n odnośnie DRY w tłumaczeniu powtarzających się nazw atrybutów, czy trzeba kombinować w sposób zaproponowany przez hekto5?
czemu kombinowanie, co w tym sposobie jest nie tak wg ciebie ?
Nie napisałem, że z yamlowymi anchorami jest coś nie tak
Trafiłem na dodatki typu https://github.com/dcrec1/activerecord_i18n_defaults i zaciekawiło mnie czy jest obecnie podobny mechanizm.