2016-04-01 19 views
0

Kısa Soru:FreeMarker direktifi ftl şablonundan doğrudan nasıl aranır?

<#assign formattedPhoneNumber = "com.myapp.utils.FormatDirective"?new(phoneNumber)> 


Detaylı Soru: böyle benim ftl doğrudan TemplateDirectiveModel uygulayan FreeMarker direktifini FormatDirective.java çağırmak mümkün mü O Spring MVC web uygulaması var o FreeMarker ile yazılmış görünümleri var, hiç Java yapılandırması yok ve sadece FreeMarkerConfigurer ve FreeMarkerViewResolver tane root-context.xml'da yapılandırıldı.

Java yapılandırmalarından kaçınmak istiyorum (modele veya paylaşılan değişkenlere şablon ekleme gibi). Ve Java yönergelerini çalıştırmak için genel olarak uygun yol hangisidir? Kapsamlı bir öğretici veya örnek bulmuyorum.

Teşekkür

cevap

0

Yapabilirsin my-commons.ftl gibi bir şey içine sık kullanılan direktifleri ve işlevleri toplamak: şablonlarınızda sonra

<#assign format = "com.myapp.utils.FormatDirective"?new()> 
... 

: cevap için

<#import "my-commons.ftl" as my> 
... 
<@my.format value=phoneNumber /> 
+0

Teşekkür! Bu, Directive örneğinin View modeline eklenmesini mi yoksa xml yapılandırmasından paylaşılan değişken olarak mı tanımlanmasını gerektirir? Veya başka bir yapılandırma olmadan tarif ettiğiniz şekilde çalışmalılar mı? – Cortex

+0

İçe aktarılan şablon, kendisini örneklemek için sınıfa işaret ettiğinden, herhangi bir yapılandırma olmadan çalışmalıdır. – ddekany

+0

Dener ve geri döneceğim, teşekkürler! – Cortex