2010-12-15 11 views
6

ऐप्लिकेशन में कस्टम सहायक फ़ाइल को देखते हुए के लिए उपलब्ध करवा सकता हूं/सहायकों/url_helper.rbRails3 - मैं कैसे एक कस्टम सहायक नियंत्रक और दृश्य

module UrlHelper 
    ... 
end 

कैसे मैं यह सब नियंत्रकों में और सभी दृश्यों में सुलभ बनाने करना ?

उत्तर

7

इसे एप्लिकेशन नियंत्रक (एक सहायक नहीं) में रखें और helper_method :method_name घोषित करें।

+0

तुम्हारा मतलब है कि बजाय वैश्विक सहायकों लिए एक अलग फ़ाइल का उपयोग करने का मैं उन्हें आवेदन नियंत्रक पर डाल दिया? – Nerian

+1

आप उन्हें मॉड्यूल में परिभाषित कर सकते हैं और उन्हें एप्लिकेशन कंट्रोलर में शामिल कर सकते हैं। मैं जो कह रहा हूं वह यह है कि एक सहायक में निहित एक विधि को नियंत्रक में उपयोग नहीं किया जा सकता है; हालांकि, एक नियंत्रक (या एक नियंत्रक में शामिल मॉड्यूल में) में एक विधि 'helper_method' का उपयोग करके विचारों और सहायकों के लिए उपलब्ध कराई जा सकती है। –

11

या ... उन्हें अपने नियंत्रक में शामिल

class ApplicationController < ActionController::Base 
    include UrlHelper 
end 
+0

क्या रेल 4 में काम करना चाहिए? क्योंकि यह मेरे लिए काम नहीं करता है। इसमें काम करता है, लेकिन विचारों के पास तरीकों तक पहुंच नहीं है। – Michael

+0

@ माइकल हाँ, यह काम करता है। यह सादा 'रूबी' है, 'ढांचे' या इसके 'संस्करण' को कभी भी न मानें। उदाहरण विधियों के लिए 'शामिल करें 'और वर्ग विधियों के लिए' विस्तार 'का उपयोग करें। – jibiel

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