2016-12-01 38 views
2

我目前使用EasyAutoComplete作爲搜索表單。如果點擊「查看全部」,則重定向到同一頁面,但使用參數[:名稱]顯示所有卡片。Rails 5 - 遍歷視圖數組的一部分

我使這個:

<% @cards.in_groups_of(6, false).each do |group| %> 
     <div class='row'> 
     <% group.each do |card| %> 
      <div class='col-sm-2 col-md-2'> 
      <div class="wrapperImg"> 
       <%= link_to image_tag(card.image_url, class: "img-responsive"), {:controller => "cards", :action => "show", :id => card.id }%> 
      </div> 
      </div> 
     <% end %> 
     </div> 
    </div> 
    <% end %> 

但是,如果你看看卡它會返回基本上是相同的卡幾百(或更多)的特定集合。我可以用一個參數確定這些卡(稀有)

我本來打算嘗試修改它的控制器,但是這是一個問題,因爲「高清指數」,使EasyAutoComplete工作

def index 
    wild_search = "%#{params[:name]}%" 
    @cards = Card.order(multiverse_id: :desc).limit(30) 
    # debugger 
    #@cards = @cards.where("name like :name", name: wild_search).page(params[:page]) if params[:name] 
    @cards = @cards.where("name like :name OR setName like :name", name: wild_search).page(params[:page]) if params[:name] 
    end 

有沒有辦法讓我做一些像

cards = @cards.where('rarity IS NOT ?', 'Land')或類似的視圖,然後修改我的輸出從@cards.in_group_ofcards.in_group_of?或者有沒有辦法使用控制器來做到這一點,並使用def search而不是def index

歡迎任何輸入。

回答

2

是否這樣?

<% @cards.where.not(rarity: "Land").in_groups_of(6, false).each do |group| %> 

http://api.rubyonrails.org/classes/ActiveRecord/QueryMethods/WhereChain.html

+0

唉唉,我沒想到我能鏈,其中這樣。謝謝! 我會接受答案 - 但這是一個菊花鏈問題。正確的版本是 '<%@ cards.where.not(稀有:「基本土地」)in_groups_of(6,false)。每個do | group | %>' – DNorthrup

+0

這救了我的屁股,謝謝 – Jordan