2013-04-02 3 views
6

संपादित करने के लिए मेरे ऐप में काफी लंबा फॉर्म है इसलिए मैंने _new_form.html.erb स्थापित किया है जो मेरे new.html.erb में प्रस्तुत किया गया है। उपयोगकर्ता इस फॉर्म को अपडेट करने के बाद और कुछ बुनियादी सत्यापन पास करता है, मैं उन्हें edit.html.erb पर रीडायरेक्ट करना चाहता हूं जो पूर्ण फॉर्म प्रस्तुत करता है, यानी _new_form.html.erbरीडायरेक्ट_

मुझे यकीन है कि यह मूलभूत सामान है लेकिन मुझे यह नहीं पता कि यह कैसे किया जाए।

मैंने को अपडेट करने का प्रयास किया है, नीचे दिए गए मेरे कंटोलर में कार्रवाई करें लेकिन मुझे अब मिल रहा है।

अर्थात

def create 
    @location = Location.new(params[:location]) 
     #redirect_to :action => "edit" 

    respond_to do |format| 
     if @location.save 
     format.html { redirect_to edit_location_path(:id), notice: 'Location was successfully created.' } 
     format.json { render json: @location, status: :created, location: @location } 
     else 
     format.html { render action: "new" } 
     format.json { render json: @location.errors, status: :unprocessable_entity } 
     end 
    end 
    end 

उत्तर

13

आप edit_location_path(:id) पर रीडायरेक्ट करने की कोशिश कर रहे हैं। प्रतीक :id वह नहीं है जिसे आप यहां पास करना चाहते हैं। आप स्थान की आईडी या स्थान स्वयं चाहते हैं: redirect_to edit_location_path(@location)

+0

शानदार, एक मिल धन्यवाद। – Holly