2011-08-01 12 views
9

मैं उपयोगकर्ता-एजेंट जांच को चलाने के लिए चाहता हूं लेकिन केवल मेरे मुखपृष्ठ पर (static_controller # घर) मैंने कोड पर एक नजदीकी नजर डाली है: http://www.arctickiwi.com/blog/mobile-enable-your-ruby-on-rails-site-for-small-screens और यह करीब लगता है लेकिन यह कभी भी एक साथ बंधे नहीं है, इसकी बस विधि निर्माण ... मैं एक jquery विधि के लिए खुला हूँ लेकिन जेएस पर रूबी/रेल पसंद करेंगे।क्या मोबाइल ब्राउजर का पता चला है तो रीडायरेक्ट करने के लिए "रेल" तरीका है?

मैं केवल वास्तव में iphone और ड्रायड के बारे में परवाह ...

उत्तर

18

चेक बाहर इस screencast। वे निम्नलिखित उपयोग करने का सुझाव एक मोबाइल डिवाइस पता लगाने के लिए:

request.user_agent =~ /Mobile|webOS/ 
+0

धन्यवाद कि मैं वही था जो मैं ढूंढ रहा था। –

+0

यह टैबलेट और कई अन्य प्रकार के मोबाइल ब्राउज़र पर विफल रहता है। एक मणि समाधान के लिए नीचे मेरा जवाब देखें। –

0

इस प्रयास करें: https://github.com/neighborland/mobu

Mobu एक रेल नियंत्रक DetectMobile कहा जाता है चिंता का विषय प्रदान करता है। मोबाइल, टैबलेट या डिफ़ॉल्ट के रूप में अनुरोधों को वर्गीकृत करने के लिए मोबू सर्वर-साइड उपयोगकर्ता एजेंट का पता लगाता है।

मोबू अनुरोध प्रकार के आधार पर आपके रेल दृश्य पथ को संशोधित करता है। इसे कस्टम एमआईएम प्रकार या अलग सबडोमेन की आवश्यकता नहीं है।

3

इस SO answer से:

सबसे अच्छा तरीका है की तरह browser

, कुछ समर्थित प्लगइन/मणि उपयोग करने के लिए यह अपनी खुद की regex लिखने की तुलना में काफी बेहतर है।

Opera/9.80 (Android 2.3.7; Linux; Opera Mobi/ADR-1111021303; U; en-GB) Presto/2.9.201 Version/11.50

का सुझाव दिया regex::

request.user_agent =~ /Mobile|webOS/

कुल होगा याद आती है कि

उदाहरण के लिए ओपेरा 11.50 निम्नलिखित USER_AGENT है।

आपको यह जानने का लाभ भी मिलता है कि कौन सा मंच (मैक, विंडोज इत्यादि), टैबलेट, यानी 6 आदि। मैं एक रूकी रेल देव हूं, मैंने इसे स्थापित किया और इसे 2 मिनट की तरह काम कर लिया। अत्यधिक सिफारिशित।