2012-09-18 2 views
0

지금 나는 아래의 코드를 사용하여 모든 사용자 마이크로 포스트를 나열하고 있습니다.RoR : 한 열에 특정 속성이있는 마이크로 포스트 만 나열하려면 어떻게해야합니까?

<li> 
    <span class="content"><%= micropost.content %></span> 
    <span class="timestamp"> 
    Posted <%= time_ago_in_words(micropost.created_at) %> ago. 
    </span> 
    <% if current_user?(micropost.user) %> 
    <%= link_to "delete", micropost, method: :delete, 
            confirm: "You sure?", 
            title: micropost.content %> 
    <% end %> 
</li> 

을 다음과 같이

<div class="span8"> 

      <% if @user.microposts.any? %> 
      <h3>Purchases I am interested in (<%= @user.microposts.count %>)</h3> 
       <ol class="microposts"> 
       <%= render @microposts %> 
       </ol> 
       <%= will_paginate @microposts %> 
      <% end %> 
      </div> 

및 _micropost.html.erb에 대한 렌더링 뷰는 그래서 이것은 그러나 내가 물건을 변경하고, 잘 작동합니다. 모든 마이크로 포스트에는 kind라고하는 문자열 (및 데이터베이스의 열) 인 hidden_tag_field가 있습니다. "구매"또는 "판매"일 수 있습니다. 나는 한 곳에서 모든 구매 마이크로 포스트와 다른 곳에서 모든 판매용 마이크로 포스트를 나열하고 싶습니다. 이 작업을 수행하려면 어떻게 마이크로 포스트보기를 변경할 수 있습니까?

답변

0

컨트롤러 :

@purchases = @microposts.where(:kind => 'purchase') 
@sales = @microposts.where(:kind => 'sale') 

보기 : 정말 좋은 생각을했다

<h2>Purchases</h2> 
<%= render @purchases %> 

<h2>Sales</h2> 
<%= render @sales %> 
+0

. 난 여전히 오류가 발생하지만 내가 여기에 질문을 다시 작성해야한다고 결정 (http://stackoverflow.com/questions/12469755/ror-nil-is-not-an-activemodel-compatible-object-that-returnsa-a- 유효 부분) – BigBoy1337

관련 문제