2010-10-07 17 views
12

के साथ उपयोगकर्ता खाते प्रबंधित करना मैंने रेलवे 3 एप्लिकेशन में डेविस लागू किया है और मुझे उपयोगकर्ताओं को प्रबंधित करने में सक्षम होने के लिए व्यवस्थापक उपयोगकर्ताओं की आवश्यकता है। उपयोगकर्ता पंजीकरण योग्य नहीं हैं और इसलिए व्यवस्थापक को खाते बनाना चाहिए। इसके बारे में जाने का सबसे अच्छा तरीका क्या होगा?रेल 3 और डिवाइस

यह मेरा खुद का UsersController बनाने के लिए बहुत शुष्क नहीं लगता है जब डेविस पहले से ही Devise::RegistrationController प्रदान करता है लेकिन मुझे कोई अन्य विकल्प नहीं दिख रहा है।

उत्तर

13

मैं बनाने के लिए विकल्प चुना अपने ही UsersController पक्ष RegistrationController साथ। यह वास्तव में व्यवस्थापक उद्देश्यों के लिए अपने स्वयं के विश्वसनीय नियंत्रक होने का अर्थ है। यह उपयोगकर्ता के रिकॉर्ड को प्रबंधित करने और उनके साथ जुड़े प्रशासनिक क्षेत्रों को बनाए रखने के लिए तैयार नहीं है। यह सब के बाद, एक प्रमाणीकरण ढांचा है। यह ऐसा करने के लिए छोड़ देता है जो इसे डिजाइन करने के लिए छोड़ देता है। आपको किसी कारण से अपना खुद का उपयोगकर्ता मॉडल बनाना होगा।

2

आप जिस कार्यक्षमता की आवश्यकता है उसे प्रदान करने के लिए आप पंजीकरण नियंत्रक को ओवरराइड कर सकते हैं। यहां से पहले उत्तर की जाँच करें: Override devise registrations controller

+0

इसका परीक्षण नहीं किया है, लेकिन आप पंजीकरण नियंत्रक को ओवरराइड कर सकते हैं और बस इसमें पहले_फिल्टर डाल सकते हैं जो सुनिश्चित करता है कि कोई व्यवस्थापक अनुरोध कर रहा है। – pushmatrix

+0

मेरे पास वास्तव में प्राधिकरण के लिए मेरा पंजीकरण नियंत्रक है। मेरी समस्या यह है कि जब आप किसी अन्य उपयोगकर्ता के रूप में साइन_अप को कॉल करते हैं तो आपको तुरंत उस उपयोगकर्ता के रूप में लॉग इन किया जाता है (जैसे यह उपयोगकर्ता पंजीकरण है)। अगर मैं अपनी सभी विधियों को बनाने जा रहा हूं, तो भी मुझे लगता है कि मैं सिर्फ अपने स्वयं के उपयोगकर्ता नियंत्रक के बजाय होगा –