पर _index जोड़ता है मैं रेल 3.0 पर रेल 2.3.8 संस्करण माइग्रेट कर रहा हूं और इसलिए मैंने अपनी रूट फ़ाइल को फिर से लिखा है। जब मैं rake routes
का उपयोग करके मार्गों की सूची देता हूं, तो मुझे लगता है कि कुछ रूट नामों में _index
शामिल है। मैं समझ नहीं सकता कि यह क्यों है।रेल 3 मार्ग रूट नाम
प्रासंगिक मार्गों:
रेल 2.3.8:
map.namespace "tracker", :path_prefix => "" do |planner|
planner.resources :planner, :collection => {:step1 => :get,
:add => :get,
:unsubscribe => [:get, :post] }
end
रेल 3.0 मार्ग:
namespace "tracker", :path => "" do
resources :planner do
collection do
get :step1
get :add
get :unsubscribe
post :unsubscribe
end
end
end
rake routes
रेल से उत्पादन 2.3.8
step1_tracker_planner GET /planner/step1(.:format)
add_tracker_planner GET /planner/add(.:format)
unsubscribe_tracker_planner GET /planner/unsubscribe(.:format)
POST /planner/unsubscribe(.:format)
रेल 3,0
step1_tracker_planner_index GET /planner/step1(.:format)
add_tracker_planner_index GET /planner/add(.:format)
unsubscribe_tracker_planner_index GET /planner/unsubscribe(.:format)
POST /planner/unsubscribe(.:format)
क्यों इस _index
जोड़ा जा रहा है के रूप में कोई भी विचार बहुत सराहना की जाएगी।
क्या इस व्यवहार को बदलने का कोई तरीका है? – etc
आप अपनी मार्ग फ़ाइल में "संसाधन" के बजाय "संसाधन" (एकवचन) शब्द का उपयोग कर सकते हैं। यह सूचकांक मार्ग के अपवाद के साथ "संसाधन" अनुरोध के समान मार्ग उत्पन्न करेगा। चूंकि रेल मानते हैं कि आप एकवचन वस्तु के साथ काम कर रहे हैं, यह स्वचालित रूप से एक इंडेक्स उत्पन्न नहीं कर रहा है क्योंकि आपके पास आइटमों की सूची नहीं होगी, आपके पास केवल एक होगा। यहां और पढ़ें: http://guides.rubyonrails.org/routing.html#singular-resources – Jocko