Obsługa urządzeń mobilnych w Ruby on Rails

Jaki jest najlepszy sposób na stworzenie aplikacji rails, która ma specjalne widoki dla różnych urządzeń mobilnych? Zasadniczo szukam czegoś takiego ASP.NET rozwiązanie MVC: http://www.hanselman.com/blog/MixMobileWebSitesWithASPNETMVCAndTheMobileBrowserDefinitionFile.aspx

Author: Eran Kampf, 2009-07-21

7 answers

Dwa artykuły, które używają iPhone ' a jako przykład serwowania innego widoku opartego na sub-domenie mobilnej lub poprzez wykrywanie agenta użytkownika. Zasadniczo utworzysz inny widok, używając czegoś takiego jak viewname.iphone.erb lub viewname.mobile.erb i ustaw żądanie.zmienna formatująca odpowiednio do iphone ' a lub telefonu komórkowego.

Subdomeny IPhone z Railami

IPhone on Rails-Tworzenie zoptymalizowanej wersji witryny Rails na iPhone ' a przy użyciu iUI i Rails 2

 13
Author: Michael Glenn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-21 16:44:47

Możesz szukać mobile_fu. Jest to wtyczka, która automatycznie zmienia format Rails z: html na: mobile dla użytkowników Nokii, Blackberry, iPhone i Palm. Możesz wtedy po prostu podać {action}.mobile.erb do uzupełnienia {action}.html.erb, a to wyrenderuje widok mobilny. Jeśli potrzebujesz czegoś bardziej drobnoziarnistego, pozwala to zrobić:

is_mobile_device?

I są różne inne metody pomocnicze

 15
Author: ideasasylum,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-21 21:57:54

Uznałem ten railscast za bardzo pomocny w tej sytuacji: http://railscasts.com/episodes/199-mobile-devices

Mam nadzieję, że to komuś pomoże.

 6
Author: Gowiem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-31 16:55:37

Ernie Miller napisał post o tym, jak zapewnić mobilne szablony dla swoich widoków. Fajne jest to, że jego podejście nie zmusza cię do dostarczenia mobilnego szablonu, jeśli nie jest to wymagane. Zamiast tego, rails powróci do głównego szablonu, jeśli nie zostanie znaleziona Wersja mobilna.

 3
Author: Eric Bock,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-03-24 19:45:19

Napisałem niedawno artykuł na ten temat, który może okazać się przydatny:

Http://www.arctickiwi.com/blog/2-mobile-enable-your-ruby-on-rails-site-for-small-screens

Hope that helps

Jonno

 1
Author: Jonathon Horsman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-15 14:10:44

Właśnie widziałem naprawdę pouczający filmik na ten temat: http://www.engineyard.com/video/12678746 . Jest o wiele więcej do przyzwoitego doświadczenia mobilnego internetu niż bezpośrednio portowanie stron.

 1
Author: DavidG,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-24 23:00:01

Możesz spróbować Mobvious- https://github.com/jistr/mobvious

Wykrywa telefony komórkowe vs. komputery stacjonarne + tablety, lub jeśli chcesz, wykrywa telefony komórkowe vs. Tablety vs. komputery stacjonarne.

Posiada również obsługę ręcznego wyboru przez użytkowników (nadpisując wykrywanie), jeśli chcesz zezwolić użytkownikom na ręczne przełączanie wersji interfejsu.

I jest rozszerzenie mobvious-rails , które dodaje kilka helperów do kontrolerów, widoków i CoffeeScript.

 1
Author: Jiří Stránský,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-13 12:19:00