0

ユーザープロフィールページに、そのユーザーが持っている「レビュー」と「レビューリクエスト」を表示したいと思います。私は現在、次のように、レビューリクエストの一覧表示が機能する場所に設定しています。

  def show
    @user = User.find(params[:id])
    @review_requests = @user.review_requests.paginate(page: params[:page])
  end

とビュー:

    <ol class="review_request">
      <%= render 'user_review_requests' %>
    </ol>

部分的に:

  <% @review_requests.each do |review_request| %>
  <li>
    <span class="description">
      <%= review_request.description %>
    </span>
   blah blah blah....(there's more of much the same)

@reviews = @user.reviews.paginate(page: params[:page])

レビューも表示したいのですが、表示したいレビューに関する情報の多くは、実際にはReviewRequestモデルに保存されています。したがって、これを行うと機能しません。

ショーコントローラーに追加します。

@reviews = @user.reviews.paginate(page: params[:page])

およびイテレータブロック:

<% @reviews.each do |review| %>
  <li>
    <span class="description">
      <%= review.review_request_id.description %>
    </span>

接続された各レビューに関連付けられているReviewRequestモデルの情報にアクセスして、プロファイルページに表示できるようにするにはどうすればよいですか。

ところで-レビューリクエストhave_manyレビューとレビューbelong_toレビューリクエスト

4

1 に答える 1

0

アソシエーションにアクセスするときは、列名 ( ) ではなく、belongs_toアソシエーション名 ( ) を介してアクセスします。このようなもの:review_requestreview_request_id

<span class="description">
  <%= review.review_request.description %>
</span>
于 2013-01-24T06:50:18.177 に答える