导轨:在另一个型号上使用户的微台显示
-
25-10-2019 - |
题
我有一个可以发布微博的用户模型,它显示在用户显示页面上,但我想知道我如何能够向用户向用户属于的模型显示,例如,在这种情况下,在这种情况下是一所学校。用户属于特定的学校,学校下面有许多用户。所有人都非常感谢!
用户显示页面
<div id="MicropostBody">
<div>
<% if @user.microposts.any? %>
<table class="microposts">
<%= render @microposts %>
</table>
<%= will_paginate @microposts %>
<% end %>
</div>
</div>
学校演出页面 一样?
<div id="MicropostBody">
<div>
<% if @user.microposts.any? %>
<table class="microposts">
<%= render @microposts %>
</table>
<%= will_paginate @microposts %>
<% end %>
</div>
</div>
用户控制器
def show
@user = User.find(params[:id])
@school = School.find(params[:id])
@micropost = Micropost.new
@microposts = @user.microposts.paginate(page: params[:page])
end
学校控制者一样??
def show
@user = User.find(params[:id])
@school = School.find(params[:id])
@micropost = Micropost.new
@microposts = @user.microposts.paginate(page: params[:page])
end
新的学校控制者
def show
@school = School.find(params[:id])
@user = User.new
@micropost = Micropost.new
@microposts = @school.microposts.paginate(page: params[:page])
@micropost = current_school.microposts.build
end
解决方案
回顾一下 部分 如果您仍在挣扎,则在阅读任何进一步阅读之前,《 Rails教程》的一部分。
users/_microposts.html.erb
<div id="MicropostBody">
<div>
<% if microposts.any? %>
<table class="microposts">
<%= render microposts %>
</table>
<%= will_paginate microposts %>
<% end %>
</div>
</div>
然后,在两种视图中,您都可以使用:
<%= render 'users/microposts', :microposts => @microposts %>
不隶属于 StackOverflow