2010-10-14 12 views
7

प्रस्तुत करना चाहिए यदि मैं त्रुटियों के साथ एक नया उपयोगकर्ता फॉर्म सबमिट करता हूं, तो यह इंडेक्स पेज पर रीडायरेक्ट करता है और उसके बाद नया पृष्ठ प्रस्तुत करता है। नियंत्रक में मैं निर्दिष्ट करता हूं कि इसे केवल नई क्रिया प्रस्तुत करनी चाहिए ताकि उपयोगकर्ता अपनी त्रुटियों को देख/ठीक कर सके और पुनः सबमिट कर सके। क्या कुछ स्पष्ट है कि मुझे याद आ रही है? तब नया पृष्ठ rendersरेल बनाने की क्रिया इंडेक्स पर रीडायरेक्ट कर रही है जब इसे नई क्रिया

def create 
    @user = User.new(params[:user]) 
    @user.role = "owner" 

    if @user.save 
    flash[:notice] = "Registration successful!" 
    else 
    flash.now[:notice] = "You have errors!" 
    render :new 
    end 
end 
+0

सुनिश्चित नहीं हैं कि 'सूचकांक पृष्ठ पर रीडायरेक्ट से क्या मतलब है कहना चाहता हूँ:

यहाँ मेरी नियंत्रक कोड में कार्रवाई बनाने है इसके ऊपर। ' यह संभव नहीं है। यह या तो नया प्रस्तुत या सूचकांक पर पुनर्निर्देशित। क्या आपके नियंत्रक पर कोई फ़िल्टर है जो हस्तक्षेप कर सकता है? साथ ही, आप शायद रीडायरेक्ट करना चाहेंगे: नए उपयोगकर्ता के अंदर @ user.save के अंदर दिखाएं। अन्यथा रेल 'निर्माण' दृश्य प्रस्तुत करने का प्रयास करेंगे, जो आपके पास नहीं है। –

+1

पता http: // localhost से जाता है: 3000/उपयोगकर्ता/नया http: // localhost: 3000/उपयोगकर्ता, लेकिन यह वास्तव में नया उपयोगकर्ता पृष्ठ दिखा रहा है। और यहां तक ​​कि यदि मैं पृष्ठ स्रोत देखता हूं तो यह सूचकांक स्रोत दिखाता है ... यह वास्तव में अजीब है। हाँ, मैंने इसे दिखाने के लिए रीडायरेक्ट किया है, धन्यवाद। – Matt

+1

मुझे एक ही समस्या है। क्या आपने इसे समझ लिया? मेरे मामले में, पुनर्निर्देशन मैं एक गलत तरीका है, क्योंकि मुझे उपयोगकर्ता द्वारा दर्ज डेटा को संरक्षित करने और त्रुटियों को दिखाने की आवश्यकता है, कि वह – AntonAL

उत्तर

0

मुझे लगता है कि आप

redirect_to :action => 'new' 
+0

को ठीक नहीं कर सकता है। वे उपयोगकर्ता द्वारा दिए गए मानों के साथ फॉर्म को फिर से प्रस्तुत करना चाहते हैं। प्रस्तुत करें: नया ठीक होना चाहिए। –

+1

हाँ रीडायरेक्ट काम करता है लेकिन यह त्रुटियों या फिर कुछ भी नहीं दिखाता है। – Matt

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