Odpowiedź jest krótka, wierzę, no nie można zrobić interpolacji smyczkowy YAML sposób, w jaki chcesz korzystać z an alias.
W twoim przypadku, co chciałbym zrobić, to mieć coś jak następuje w moim pliku regionalne:
en:
site_name: "Site Name"
static_pages:
company:
description: ! '%{site_name} is an online system'
a następnie wywołać w odpowiednim widoku z nazwy witryny jako parametr:
t('.description', site_name: t('site_name'))
, które dostaniesz "Site Name is an online system"
.
Jednakże, jeśli jesteś zdesperowany, aby używać aliasów w pliku YAML do łączenia ciągów łącznie następujące całkowicie Unrecommended kod będzie również działać poprzez łańcuch dwa elementy tablicy:
en:
site_name: &site_name "Site Name"
static_pages:
company:
description:
- *site_name
- "is an online system"
i wtedy będzie join
tablicę w odpowiednim widoku tak:
t('.description').join(" ")
co również uzyskać Ci "Site Name is an online system"
.
Jednak zanim zdecydujesz się pójść tą drogą, niezależnie od kwestii, które @felipeclopes związane, rzucić okiem na:
- this StackOverflow answer dotyczących łączenie ciągów i18n (TL; dr Proszę nie dla zespół tłumaczy).
- Pytania dotyczące StackOverflow here i here, które są podobne do twojego pytania.
** Patrz również: ** https://stackoverflow.com/questions/15777987/string-interpolation-in-yaml – dreftymac