2014-10-20 5 views
6

तुलना में प्रत्येक संपत्ति का उपयोग करके मैं निम्नलिखित यूआरएल में उदाहरण का पालन करके थाइमेलीफ का उपयोग करके संग्रह को फ़िल्टर करने का प्रयास कर रहा हूं। "प्रक्षेपण & संग्रह पर चयन" खंड। http://doanduyhai.wordpress.com/2012/04/14/spring-mvc-part-iv-thymeleaf-advanced-usage/थाइमेलीफ वें में संग्रह को फ़िल्टर करने के लिए कैसे करें:

<tr th:each="artist,rowStat : ${listArtits.?[alive == true]}"> 
... 
</tr> 

हालांकि मैं बजाय एक और संपत्ति निश्चित मूल्य (सही/गलत) का उपयोग करना चाहते हैं। उदाहरण के लिए

<tr th:each="artist,rowStat : ${listArtits.?[played > playedCountReq]}"> 
... 
</tr> 

जहां खेला जाता है CountReq Thymeleaf के लिए एक अन्य रूप चरणीय है। मुझे निम्नलिखित त्रुटि मिलती है। संपत्ति या फ़ील्ड 'खेला काउंटर रेक' प्रकार की वस्तु पर नहीं पाया जा सकता है ...

मैंने कई तरीकों की कोशिश की लेकिन कोई सफलता नहीं मिली। कोई सुझाव?

+0

अब तक का एकमात्र काम/समाधान मैंने पाया है: ब्लॉक का उपयोग करना। वें स्थानांतरित करें: प्रत्येक में वें: ब्लॉक और वें: यदि टी टैग – gmansoor

+0

में कृपया अपने पूरे फॉर्म/टेबल के लिए कोड डालें, इस तरह हम पूरी तस्वीर – Aeseir

उत्तर

5

मैं succeded :) यहाँ समाधान है:

नियंत्रक में:

(...) 
Person p1 = new Person(); 
p1.setAge(20); 
Person p2 = new Person(); 
p2.setAge(30); 
List<Person> list = Lists.newArrayList(p1,p2); 
modelMap.addAttribute("list", list); 
Integer minAge = 13; 
modelMap.addAttribute("minAge", minAge); 
(...) 

html में:

<table th:with="min=${minAge}"> 
<tr th:each="person,rowStat : ${list.?[age > __${min}__]}"> 
<td><span th:text="${person.age}"></span></td> 
</tr> 
</table> 

आउटपुट:

30 

आशा इस मदद

+0

भयानक देख सकते हैं - इसलिए प्रत्येक ब्लॉक में $ {minAge} का उपयोग करना काम नहीं करता है? – gmansoor

+0

मैंने ईमानदार होने की कोशिश नहीं की: पी –

0

चयन फ़िल्टर के भीतर, अयोग्य गुण फ़िल्टर किए गए संग्रह के तत्व से संबंधित हैं। लेकिन, परिवर्तनीय #root हमेशा रूट संदर्भ ऑब्जेक्ट के रूप में परिभाषित किया जाता है। इस प्रकार आप चयन फ़िल्टर के भीतर से रूट स्तर पर चर को संदर्भित कर सकते हैं।

<tr th:each="artist,rowStat : ${listArtists.?[played gt #root.playedCountReq]}"> 
… 
</tr> 

"The #this and #root variables" अधिक जानकारी के लिए स्प्रिंग ईएल दस्तावेज में अनुभाग देखें।

संबंधित मुद्दे

 संबंधित मुद्दे