Apoiar dispositivos móveis em Ruby on Rails
-
18-09-2019 - |
Pergunta
O que é a melhor maneira de desenvolver uma aplicação rails que tem vistas especiais para diferentes dispositivos móveis? Basicamente, eu estou procurando algo como esta solução ASP.NET MVC: http: //www.hanselman. com / blog / MixMobileWebSitesWithASPNETMVCAndTheMobileBrowserDefinitionFile.aspx
Solução
Dois artigos que usam o iPhone como um exemplo de servir-se uma visão diferente baseado em um sub-domínio móvel ou um através da detecção do user-agent. Essencialmente, você vai criar uma visão diferente usando algo como viewname.iphone.erb ou viewname.mobile.erb e definir a variável request.format para iPhone ou celular, respectivamente.
subdomíniosiPhone on Rails - Criação de uma versão otimizada iPhone de seu site Rails usando IIU e Rails 2
Outras dicas
Você pode estar à procura de mobile_fu . É um plugin que muda automaticamente os Rails formato de: html para: móveis para usuários Nokia, BlackBerry, iPhone e Palm. Você pode, então, basta fornecer um {action}.mobile.erb
para complementar {action}.html.erb
e vai tornar a exibição móvel. Se você precisa de algo mais de grão fino, que permite que você faça:
is_mobile_device?
e há vários outros métodos auxiliares
Eu encontrei este railscast extremamente útil para esta situação: http://railscasts.com/episodes/199-mobile-devices
Hope isso ajuda a alguém.
Ernie Miller escreveu um pós sobre como fornecer modelos de móveis para os seus pontos de vista. O que é bom é que sua abordagem não forçá-lo a fornecer um modelo móvel se não for necessário. Em vez disso, trilhos vai cair de volta no seu modelo principal, se a versão móvel não foi encontrado.
Eu escrevi recentemente um artigo sobre este que você pode achar útil:
http : //www.arctickiwi.com/blog/2-mobile-enable-your-ruby-on-rails-site-for-small-screens
Espero que ajude
Jonno
Eu só vi um vídeo realmente esclarecedor sobre este: http://www.engineyard.com/video/ 12678746 . Há muito mais para uma experiência de web móvel decente, então portar diretamente páginas.
Você pode querer tentar Mobvious - https://github.com/jistr/mobvious
Detecta celulares versus desktops + comprimidos, ou se quiser, detecta móvel vs. comprimidos vs. desktops.
Ele também tem suporte para seleção manual por usuários (sobrescrevendo a detecção) se você quiser permitir que os usuários para versões de interface alternar manualmente.
E existe uma extensão mobvious-rails que acrescenta alguns ajudantes para seus controladores, pontos de vista e CoffeeScript.