2010-03-09 6 views
7

इसलिए मेरे पास कई नियंत्रक और कई विचार हैं।सभी विचारों में एक चर को देखने के लिए कैसे - रेल

मैं चाहता हूं कि हर बार लोड होने पर मेरे चर @random_quote का मूल्यांकन किया जाए।

मैंने एप्लिकेशन नियंत्रक में कई चीजों की कोशिश की (मुझे लगा कि यह यहां होना चाहिए?) लेकिन उनमें से कोई भी काम नहीं करता था। @random_quote.body (in view) और

@random_quote = Quote.find(:random) (नियंत्रक में है ना?)

मेरे सारे आवेदन के माध्यम से देखा मधुमक्खी को:

तो मैं कैसे इन दो कनेक्ट करते हैं?

आपके उत्तरों के लिए धन्यवाद!

उत्तर

13

मुझे संदेह है कि आपको वास्तव में सभी विचारों में पहुंचने की आवश्यकता है। लेकिन आप अपने आवेदन नियंत्रक में before_filter के साथ बुलाए जाने वाले विधि के तहत @random_quote = Quote.find(:random) डाल सकते हैं। फिर यह हर जगह सुलभ हो जाएगा।

तो जैसा:

before_filter :get_random_quote 
def get_random_quote 
    @random_quote = Quote.find(:random) 
end 
+0

यह इस तरह से काम करता है धन्यवाद। मुझे यह भी एहसास हुआ कि मैं इसे एप्लिकेशन कंट्रोलर में भी डाल सकता हूं (फ़िल्टर से पहले)। वास्तव में क्या अंतर है। क्या इसे सहायक में रखना बेहतर है? एक बार फिर धन्यवाद! – user275447

+0

मुझे लगता है कि आप प्रत्येक पृष्ठ दृश्य में एक बार उद्धरण उत्पन्न करना चाहते थे। यदि आप हर बार एक नया उद्धरण चाहते हैं तो आपको पहले_फिल्टर की आवश्यकता नहीं है। –

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