我想显示属于一个给定项目的每个文件(关系工作正常,可以使用Rails控制台进行检查)。 这是我的'Project'控制器,我可能需要一个do循环(循环遍历每个文件,1个项目)但我不确定:
def show
@project = Project.find(params[:id])
@pfile = Project.find(params[:id]).Pfiles.find(:all)
respond_to do |format|
format.html # show.html.erb
format.xml { render :xml => @project }
format.xml { render :xml => @pfile }
end
end
这是我的“项目”视图:
<p id="notice"><%= notice %></p>
<p>
<b>Name:</b>
<%= @project.name %>
</p>
<p>
<b>Description:</b>
<%= @project.description %>
</p>
<p>
<b>Files:</b>
<%= @project.pfile.name %>
</p>
<%= link_to 'Edit', edit_project_path(@project) %> |
<%= link_to 'Back', projects_path %>
谢谢:)
答案 0 :(得分:0)
如果关系设置正确,您可以这样做:
@pfiles = @project.pfiles
<p>
<b>Files:</b>
<% @pfiles.each do |pfile| %>
<%= pfile.name %>
<% end %>
</p>
答案 1 :(得分:0)
更容易......依靠铁轨的魔力。
控制器中的
@project = Project.find(params[:id])
@pfiles = @project.pfiles
然后在视图中
<b>Files:</b>
<%= render @pfiles %>
然后在views / pfiles / _pfile.html.erb
中<%= pfile.name %>