Und*_*ion 7 ruby layout routing ruby-on-rails ruby-on-rails-4
我想为网站的管理员和公共部门设置一对风格指南.
每个都需要自己的布局,其中包含静态html的混合和对erb partials的调用(因此静态页面不会剪切它).我不需要一个控制器来提供这些页面,我不希望什么是有效的开发内容,使其余的代码混乱.这让我想知道是否有一种直接渲染布局的方法.
免责声明:我很欣赏这不是我应该经常/永远做的事情,我知道有很多争论为什么这是一个坏主意.我对这是否可能感兴趣.
有没有办法让我直接渲染布局routes.rb而不通过控制器?
出于一些奇怪的原因,我想要渲染一个空白的JS文件一段时间,并且编写一个控制器对于这种黑客来说感觉太多了.感谢@genkilabs的回答,我使用了这个3班轮:
get 'analytics/some_file.js', to: -> (env) do
[200, { 'Content-Type' => 'application/javascript' }, ['']]
end
Run Code Online (Sandbox Code Playgroud)
nsa*_*ave -1
实际上答案是否定的,没有控制器你就无法做到这一点。但请参阅一些简单的解决方法......
这不是很公平,但应该有效:
假设您FooController已经实现了任何逻辑。现在您想要anypage.html.erb在不创建任何特殊控制器的情况下进行渲染。具体方法如下:
配置到静态页面的路由:
get '/your/static/page', to: 'foo#anypage'
落实观点app/views/foo/anypage.html.erb。
问题是不可能改变你的视图路径。该路径取决于您在路由中指定的控制器(foo在示例中)。另请注意,它将使用指定的FooController布局进行渲染。
它应该按照惯例工作,您可以在此处阅读相关内容。
更新
我也在这里找到了非常相似的解决方案。对于此类页面,使用 ApplicationController 似乎更合理。(请注意,您无需为其创建操作)
| 归档时间: |
|
| 查看次数: |
4261 次 |
| 最近记录: |