2010-10-13 4 views
5

मैं एक फॉर्म बना रहा हूं ताकि उपयोगकर्ता को परियोजना अनुमति को CRUD करने की अनुमति मिल सके।रेल 3 - संग्रह_ चयन - PROMPT को समझना?

.... ऊपर के साथ

<% roles = Role.all %> 
<%= f.collection_select :role_id, roles, :id, :name, :prompt => true %> 

समस्याएं, जबकि यह renders:

  1. एक मान से मेल खाता है, यह पता चलता है कि, चयनित के रूप में लटकती में जो अच्छा है। समस्या यह है कि यदि कोई उपयोगकर्ता एडमिन के रूप में सेट किया गया है। यह लटकती उपयोग करने के लिए कुछ और करने की अनुमति को बदलने के लिए नहीं, बल्कि अनुमति स्पष्ट करने के लिए आसान है ...

उदाहरण ... ड्रॉप डाउन का चयन करें: - कृपया का चयन करें - व्यवस्थापक - सदस्य - अतिथि

यदि व्यवस्थापक का चयन किया गया है, तो कृपया कभी भी प्रदर्शित न करें चुनें .... उपयोगकर्ता को सेटिंग को हटाने की अनुमति देने के लिए मैं एक विकल्प कैसे दिखा सकता हूं?

कोई भी विचार? THX

उत्तर

15

मेरा मानना ​​है कि आप चाहते हैं:

<%= f.collection_select(:role_id, roles, :id, :name, {:include_blank => 'Please Select'} %> 

अधिक जानकारी

1
<% roles = Role.all %> 
<%= f.collection_select :role_id, roles, :id, :name, :prompt => (@user.admin? ? true : false) %> 

के लिए FormOptionsHelper docs देखें है कि आपकी मदद?

आप यदि कोई उपयोगकर्ता व्यवस्थापक/नहीं है की जाँच करने के .. त्रिगुट आपरेशन में है कि हालत का उपयोग का मान सेट के लिए एक रास्ता होने किया जाना चाहिए: शीघ्र ..

lemme पता है कि यह कैसे जाता है :)

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