有没有办法在Rails模板中输出动作?什么相当于ASP.NET MVC Html.RenderAction? 我需要在侧边栏中渲染一些东西,我不想在局部或特定控制器中放置查询。到目前为止,我只能想到一种方法 - 将一些东西放入@stuff(通过任何方式)实例var并让渲染找到正确的部分或明确指定它。最好只能更改一个文件来更改侧边栏的内容(如在ASP中)。
答案 0 :(得分:0)
是的,有。您可以将“侧边栏”部分添加到应用程序布局(在app / views / layouts文件夹中)。
您可以将获取“侧边栏”变量的代码放在ApplicationController中的before_filter中
class ApplicationController < ActionController::Base
before_filter :sidebar_function
答案 1 :(得分:0)
看看
http://guides.rubyonrails.org/layouts_and_rendering.html
特别是阅读子项目
http://guides.rubyonrails.org/layouts_and_rendering.html#using-content_for
答案 2 :(得分:0)
我不知道ASP.net,但是,我认为Rails产量可能是解决方案。这是一个小例子:
视图:
<% content_for :one do %>
Test one
<% end %>
<% content_for :two do %>
Test two
<% end %>
<p>Hi</p>
application.html.erb
<%= yield :one %>
<%= yield %>
<%= yield :two %>
请参阅Railsguides:http://guides.rubyonrails.org/layouts_and_rendering.html#understanding-yield