2012-06-08 16 views
15

मैं उपयोगकर्ताओं के लिए सीआरयूडी स्थापित करना चाहता हूं, जो केवल मेरे वेब एप्लिकेशन के प्रशासकों के लिए उपलब्ध है। routes.rb में तो:रेल: form_for नेमस्पेड संसाधन

namespace :admin do 
    resources :user 
end 

इसका मतलब है जो:

admin_user_index GET /admin/user(.:format)     admin/user#index 
       POST /admin/user(.:format)     admin/user#create 
    new_admin_user GET /admin/user/new(.:format)    admin/user#new 
edit_admin_user GET /admin/user/:id/edit(.:format)   admin/user#edit 
     admin_user GET /admin/user/:id(.:format)    admin/user#show 
       PUT /admin/user/:id(.:format)    admin/user#update 
       DELETE /admin/user/:id(.:format)    admin/user#destroy 

शो, सूचकांक काम ठीक लेकिन संपादित करें और नया नहीं है। के लिए # < #
अपरिभाषित विधि `user_path ':: मैं _form पहली पंक्ति में इस त्रुटि प्राप्त हो रही है जो 0x007fb6645c6378>

इस:

मैं form_for कैसे उपयोग कर सकते हैं एक नामित संसाधन के साथ?

उत्तर

38

साथ यूआरएल को बताने के लिए आप एक प्रतीक के रूप नाम स्थान का नाम जोड़ सकते हैं है:

<%= form_for [:admin, @user] do |f| %> 
+1

बहुत बढ़िया! धन्यवाद =) =) – Barbared

+1

ओह मैन, मैं अपनी पूंछ का पीछा लगभग एक घंटे तक कर रहा हूं जब तक मुझे यह जवाब नहीं मिला। – janosrusiczki

3

जब आप form_for का उपयोग करते हैं, तो यह मानता है कि उपयुक्त पथ [model_name] _path है। आप स्पष्ट रूप से इसे

form_for @user, url: admin_user_path 
संबंधित मुद्दे