2013-10-23 7 views
5

क्या मजबूत_परैम सशर्त बनाने का कोई तरीका है? 2 अलग-अलग तरीकों को लिखने की आवश्यकता के बिना? मामला है जब एक निश्चित शर्त सचरेल 4 मजबूत पैराम: उन्हें सशर्त बनाते हैं?

उदाहरण के लिए है, जहां एक की अनुमति सूची में कुछ विशेषताओं को जोड़ना चाहते हैं में:

devise_parameter_sanitizer.for(:user) {|u| u.permit(:user, 
                :email, 
                :role, 
                )} 

मैं इस है: भूमिका विशेषता उपरोक्त उदाहरण में अनुमति दी। मैं केवल इस विशेषता को अनुमति देना चाहता हूं जब Rails.env.development में ऐसा करने का कोई तरीका है?

उत्तर

1

कोई समाधान नहीं मिला है, इसलिए मैंने 2 विधियां बनाई और रिकॉर्ड को संभालने के लिए सही पैरा विधि को कॉल किया।

8

क्या यह वांछित परिणाम प्राप्त करता है?

user_params = [ :user, :email, (:role if Rails.env.development?) ].compact 
devise_parameter_sanitizer.for(:user) { |u| u.permit(*user_params) } 
+0

मेरी माफ़ी, अभी जवाब दिया गया है। यह सवाल काफी पुराना है। –

+0

पुराना या नहीं, आपके द्वारा दिया गया उत्तर वैध और उपयोगी है। बस सिंटैक्स के चारों ओर अपने सिर को लपेटने की जरूरत है, लेकिन मुझे लगता है कि कम से कम, इसका उपयोग कर रहे होंगे! – RonLugge

+0

कृपया समझाओ! – Matthias

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