एक रेल एप्लिकेशन में ApplicationController
में around_action
के माध्यम से वर्तमान लोकेल सेट है कोड> कॉलबैक यह केवल एक before_action
का उपयोग करने की तुलना में एक क्लीनर समाधान है, जो अनुरोध के आसपास विशिष्ट स्थान को लटकाएगा।
class ApplicationController & lt ; ActionController :: बेस के चारों ओर_ऑक्शन: with_locale def with_locale I18n.with_locale (find_current_locale) {yield} समाप्ति समाप्ति
चूंकि अनुरोध को पूरा करने के बाद मौजूदा लोकेशन रीसेट हो जाने के बाद अनुरोध विशिष्ट नहीं है एक परीक्षण में लोकेल निम्नलिखित कोड के साथ before_filter
पास होगा:
यह 'लोकल से अनुरोध' प्राप्त करता है: क्रिया, स्थान: लोकेल I18n.locale.should == लोकेल एंड
नियंत्रक में कुछ अतिरिक्त तर्क इंजेक्शन के बिना मैं एक around_filter
के साथ काम करने के लिए इस परीक्षण को लागू करने का एक तरीका नहीं सोच सकता । क्या आरएसपीसी के साथ एक सरल तरीका है?
अगर I18n.with_locale
उचित पैरामीटर के साथ बुलाया गया है।
यह 'अनुरोध से लोकेल सेट' अनुमति देता है (I18n)। प्राप्त करने के लिए (: with_locale) प्राप्त करें: क्रिया, लोकेल: लोकेल की अपेक्षा (I18n)। (: With_locale) .with (लोकेल) समाप्ति
Comments
Post a Comment