如何找到Rails部分的文件名?

时间:2012-11-11 19:36:50

标签: ruby-on-rails ruby-on-rails-3

在Rails 3中,如何找到render 'foo'将呈现的部分文件名?

1 个答案:

答案 0 :(得分:3)

为了清楚起见,如果您在控制器中调用render,并在视图中的标记内调用render,则会得到两个不同的结果。

在控制器bar中调用render 'foo'会导致呈现文件<project>/app/views/bar/foo.html.erb

视图中,例如调用<project>/app/views/bar/show.html.erb的{​​{1}}会导致将部分<% render 'foo' %>纳入<project>/app/views/bar/_foo.html.erb视图。部分取自与视图相同的目录。

如果你将文件夹名称放入渲染中,那么要使事情变得更复杂一些,例如show.html.erb这与render 'shared/foo'相关。

所以:

<project>/app/views

P.S。如果您在Controller: render 'foo' = <project>/app/views/<controller name>/foo.html.erb render 'shared/foo' = <project>/app/views/shared/foo.html.erb View: <% render 'foo' %> = _foo.html.erb in directory of view <% render 'shared/foo' %> = <project>/app/views/shared/_foo.html.erb 命令中指定了其他:format,则render需要相应更改(例如html.erbjs.erb等等。)

http://guides.rubyonrails.org/layouts_and_rendering.html#using-partials