ruby-on-rails - 多种请求格式的单一 View 模板

标签 ruby-on-rails

我参与了 HTML5 应用程序的构建,我们已经为 iPhone、Android 等创建了自定义 MIME 类型(移动)。例如,我们有 index.html.haml 和 index.mobile.haml。在许多情况下,输出将是相同的——所以我的问题是,如何创建一个同时被移动和 html 请求格式使用的 View 文件?在 View 不同的情况下,选择正确的 html 或移动 View ?

我一直在挖掘,似乎找不到一个干净优雅的解决方案。

最佳答案

您可以在同一个 respond_to block 中处理常规请求和移动请求,并明确设置要使用的模板。例如:

respond_to do |format|
  format.any(:html, :mobile)
    render :template => "action.html.erb"
  end
end

但是,我最近读了一篇文章,其中避开了移动设备特定的请求格式,以实现一种“级联” View 。您可能还想考虑一下:Mobile Devices and Rails: Maintaining your Sanity .

关于ruby-on-rails - 多种请求格式的单一 View 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4919427/

相关文章:

ruby-on-rails - 是否为 :include work on ActiveRecord instances?

ruby-on-rails - Ruby:-查找文件中某个字符的出现次数

javascript - 使用 Rails 和 Javascript 按顺序提交多个表单(无论成功还是失败)

ruby-on-rails - 没有 View 的 Controller 中的操作(用于 AJAX)

ruby-on-rails - 如何将对象传递给 Reveal Modal 弹出窗口?

css - Rails 4 在 Heroku 上定位 Bootstrap 字形图标

ruby-on-rails - 如何将 Controller 包含在 Ruby on Rails gem 中?

ruby-on-rails - Capybara - 检查链接上是否存在数据属性

ruby-on-rails - Delphi 上的 Web 服务错误

ruby-on-rails - redis blocking peek in ruby​​,换句话说,在不删除的情况下阻止pop