1

我想渲染特定的HTML 片段来显示横幅,因为每个横幅都有不同的性质(一些图像、一些 Flash 等)。每个横幅文件都在 app/public/banners/ 下。我尝试了很多方法,例如:

render :file => "/banners/somebanner.html"

但它找不到该文件,因为 Rails 在app/views下查找。有任何想法吗 ?谢谢!

视图路径 app/views 中缺少模板横幅/somebanner.html

4

2 回答 2

2

我从来没有厌倦它,只是在谷歌上找到了这篇文章

render :file => "#{RAILS_ROOT}/public/banners/somebanner.html"

看起来可能会有一些缓存副作用,即使在开发模式下也是如此

http://workingwithrails.com/forums/4-ask-a-rails-expert/topics/1178-render-file-rails-root-public-layouts-mylayout-cached

你也可能想要 :layout => false

于 2010-04-21T04:03:15.640 回答
1

临时修复:

将“public/banners”移动到“app/views/banners”,然后在“/public”中创建一个同步链接,以便我的团队可以添加新的横幅

于 2010-04-21T04:18:21.580 回答