0

私はマイクロブログを投稿できるユーザーモデルを持っていて、それはユーザーショーページに表示されますが、ユーザーが作成したマイクロブログを、たとえばこの場合は学校のユーザーが属するモデルにどのように表示できるのでしょうか。ユーザーは特定の学校に属しており、学校には多くのユーザーがいます。すべてが大いに感謝します!

ユーザーショーページ

<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
4

1 に答える 1

1

それでも苦労している場合は、これ以上読む前に、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 %>

于 2012-02-16T09:19:42.173 に答える