2013-08-16 7 views
8

मैं समूह के लिए अपने सभी नियंत्रकों और "व्यवस्थापक"रेल 4: एक फ़ोल्डर में समूहन नियंत्रकों

तहत उदाहरण के लिए फ़ोल्डर में अपने विचार चाहते हैं यह मैं क्या किया:
(1) मैं सभी controllers के तहत ले जाया गया एक फ़ोल्डर admin
(2) मैं चले गए सब एक फ़ोल्डर के अंतर्गत viewsadmin

(3) मैं रेल गाइड में पढ़ा है कि मैं यह कर किया जाना चाहिए:

scope module: 'admin' do 
    resources :admin_permissions, :admin_layout, :admin_db 
end 
,210

लेकिन मुझे एक त्रुटि

ActionController::RoutingError at /admin_permissions/index 
uninitialized constant AdminMainController 

निर्देशिका संरचना बार आ रही है:

controllers 
    -> admin 
    -> admin_main_controller 
    -> admin_permissions_controller 
    -> admin_layouts_controller 
    -> admin_db_controller 
views 
    -> admin 
    -> admin_main 
    -> admin_permissions 
    -> admin_layouts 
    -> admin_db 

सभी पहले तीन नियंत्रकों admin_main जो आवेदन

क्या पढ़ने के लिए पर कोई सलाह से विरासत से विरासत/चेक?

उत्तर

8

यदि आप rake routes निष्पादित करते हैं, तो आप देखेंगे कि आपके सभी नियंत्रकों के नाम 'व्यवस्थापक /' के साथ उपसर्ग किए गए हैं।

क्योंकि आप अपने नियंत्रकों को निर्देशिका "व्यवस्थापक" में ले जाते हैं, तो आपको वहां प्रत्येक नियंत्रक को नामस्थान जोड़ना चाहिए। उदाहरण के लिए:

class Admin::AdminMainController < ActionController::Base 
end 

और अपने नियंत्रकों, विचारों और सहायकों की जांच करें, सभी प्रासंगिक पथ और नियंत्रक के नाम अपडेट करें।

+0

धन्यवाद !! मैंने इसे हर जगह जोड़ा, क्या मैं इसे एक सहायक आयात करते समय भी शामिल करता हूं? "एडमिन :: AdminMainHelper" या बस "AdminMainHelper शामिल करें" – nevermind

+0

पर निर्भर करता है कि अब आपके सहायक का मॉड्यूल नाम क्या है। यदि नाम "Admin :: AdminMainHelper" है, तो "Admin :: AdminMainHelper" शामिल करें, या "AdminMainHelper शामिल करें" – Bigxiang

+0

यह अब काम करता है! व्यवस्थापक के साथ :: AdminMainHelper – nevermind

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