【问题标题】:Rendering a page within a view without any inherited layout在没有任何继承布局的视图中呈现页面
【发布时间】:2016-05-31 23:56:26
【问题描述】:

我希望在 rails 4.2 应用程序的视图中显示一些 html 电子邮件。

我想知道是否有比将其放入 iframe 更好的方法(这似乎有点古怪)。
我目前正在渲染:

%iframe{srcdoc: "#{@email.html}"}

就像直接在视图中渲染一样...因为这似乎是让它信息正确显示的唯一方法。

我对此有一种不好的感觉。

有没有办法完全忽略所有资产并呈现(例如部分?)干净地尊重内联的 css,这将与我不需要在视图中呈现的 iframe 部分中的 html 电子邮件一起提供?

【问题讨论】:

  • 你解决了这个问题,并摆脱了片状吗?也许这没有引起太多关注的原因是它实际上是一个关于 HTML 和浏览器显示它的方式的问题。 Rails 似乎只是交付工具。

标签: ruby-on-rails html ruby-on-rails-4 iframe


【解决方案1】:

我一直使用第二个布局文件并在渲染视图时选择它:

def show
  render layout: 'other_layout'
end

在此处阅读更多信息:http://guides.rubyonrails.org/layouts_and_rendering.html#using-render

【讨论】:

  • 如果您有一个完全不同的页面,这很好。但如果有意义的话,我想显示主页,其中有一个子页面。页面本身是电子邮件“客户端”,子页面是电子邮件。显然,电子邮件客户端有自己的布局,但电子邮件是独立的。
猜你喜欢
  • 1970-01-01
  • 2012-01-01
  • 2011-07-16
  • 1970-01-01
  • 2012-09-30
  • 2011-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多