2011-05-18 12 views
5

में एक डोमेन क्षणिक संपत्ति प्रदर्शित करें मेरी Grails में 1.3.7 परियोजना मैं इस तरह एक डोमेन वर्ग है:scaffolded विचारों

class User { 

String login 
String password 
String name 
String passwordConfirmation 

static constraints = { 
    login  unique:true, blank:false, maxSize:45 
    password password:true, blank:false, size:8..45, 
       matches: /(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).*/ 
    name  blank:false, maxSize:45 
    passwordConfirmation display:true, password:true, validator: { val, obj -> 
     if (!obj.properties['password'].equals(val)) { 
      return ['password.mismatch'] 
     }} 
} 

static transients = ['passwordConfirmation'] 

String toString() { 
    name 
} 

}

और मैं इसी बनाएँ/संपादित करें के लिए पाड़ उपयोग कर रहा हूँ कार्रवाई।

मेरी समस्या यह है कि यदि मैंने पासवर्ड चिह्नित किया है तो कॉन्फ़िगरेशन बाधा प्रदर्शित होने के बावजूद, यह मचान विचारों पर नहीं दिखाया गया है। क्या ऐसा कुछ है जिसे मैं क्षणिक गुणों को प्रदर्शित करने के लिए याद कर रहा हूं? क्या यह संभव है?

धन्यवाद

उत्तर

5

डिफ़ॉल्ट grails तक क्षणिक संपत्तियों के लिए विचारों में खेतों का निर्माण नहीं करता। आप मैन्युअल रूप से प्रत्येक दृश्य पर उन्हें जोड़ सकते हैं या आप निम्न कर सकता है अगर आप उनमें से एक बहुत कुछ है और scaffolded विचारों का उपयोग कर रहे:

स्थापित दृश्य टेम्पलेट्स:

grails InstallTemplates 

तब में प्रासंगिक टेम्पलेट्स खोलने src/टेम्पलेट्स/मचान

और लाइन है कि पढ़ता संशोधित:

persistentPropNames = domainClass.persistentProperties*.name 

012 करने के लिए
persistentPropNames = domainClass.properties*.name 

प्रत्येक टेम्पलेट्स के लिए। यह एक बॉज का थोड़ा सा है, लेकिन इसे काम करना चाहिए और आप अपनी पसंद की किसी भी संपत्ति को शामिल/बहिष्कृत करने के लिए टेम्पलेट को और संपादित कर सकते हैं।

+0

इसे प्राप्त करने का एक आसान तरीका होना चाहिए, लेकिन इस पल के लिए एकमात्र तरीका प्रतीत होता है। धन्यवाद – Carlos