2009-10-29 11 views

Odpowiedz

7

Używam funkcji alternative syntax. Uruchamiam szablon za pomocą [#ftl] i używam tej składni.

Dla wyrażenia używam ciąg dosłownego cechę: ${r"${expression}"}

+0

Używam tego samego podejścia, które jest trochę brzydkie, ale działa. Robi się naprawdę nieprzyjemnie, jeśli użyję zmiennej zewnętrznego szablonu do zdefiniowania dostępu do właściwości zmiennej wygenerowanego szablonu, która wygląda tak: $ {r "$ {entity."} $ {PropertyDescriptor.name}} i kończy się jak $ {entity.creationDate} , zważywszy, że właściwośćDeskryptor ma nazwę "creationDate". –

8

Można także użyć: ${"$"}{expression} jeśli okaże się {} gniazdowania mylące.

+0

Dobry pomysł, myślę, że to wspiera czytelność lepiej –

+0

Najlepsze z wszystkich proponowanych rozwiązań alternatywnych. Boggles mój umysł, że nie ma prostszego sposobu, takiego jak '\ $' - ale nie ma. Jest to wystarczająco dobre przybliżenie elegancji ... – Stevel

0

W przypadku, gdy chcemy korzystać z innych niż surowe ciągi tak, że można uciec cudzysłów, apostrof, etc, można wykonać następujące czynności:

Wyobraź sobie, że chcesz użyć ciąg $ {Witam} - "Przyjaciela mojego przyjaciela" wewnątrz napisu. Nie możesz tego zrobić z surowymi ciągami. Użyłem tego, co działa:

${"\x0024{Hello}-\"My friend's friend\""} 

Nie uniknąłem apostrofu, ponieważ użyłem podwójnych cytatów.