ROR 신인. acts_as_taggle_on 보석을 사용하여 태그를 지정하고 this post과 비슷한 두 가지 유형의 태그를 만들려고했습니다. 폼이 작동하고 있고 두 개의 다른 태그 유형이 추가되었지만 태그 유형 중 하나만 작동하기 때문에 컨트롤러에 문제가 발생합니다 (일반 태그 - '시리즈'가 작동하지 않음). '작동하지 않는다'고 말하면 링크 된 태그가있는 작품 만 내 색인 페이지를 필터링 할 수있는 클릭 가능한 링크가 표시 페이지의 태그입니다.이 태그는 '태그'에는 작동하지만 시리즈에는 작동하지 않습니다. . ' Series는 제가 링크 된 시리즈 태그가있는 것만을 보여주는 대신 모든 삽화를 보여줍니다.두 번째 태그 유형이 작동하지 않는 이유는 무엇입니까?
컨트롤러 : 너무 건조하지 마세요! 환영합니다. :) 제어 허가에
def index
if params[:tag]
@artworks = Artwork.tagged_with(params[:tag])
else
@artworks = Artwork.all
end
end
def tagged
if params[:tag].present?
@artworks = Artwork.tagged_with(params[:tag])
else
@artworks = Artwork.all
end
end
def series
if params[:series].present?
@artworks = Artwork.tagged_with(params[:series])
else
@artworks = Artwork.all
end
end
강한 PARAMS :
:tag_list, :tag, :series_list, :series
모델 :
acts_as_taggable
acts_as_taggable_on :tags, :series
경로 :
get 'series' => 'artworks#index', :as => 'series'
get 'tagged' => 'artworks#index', :as => 'tagged'
root "artworks#index"
쇼 :
<% unless @artwork.series.blank? %>
<div class="col-xs-6 col-sm-6 col-md-4">
<p class="field-label">Series</p>
<% @artwork.series.each do |series| %>
<span class="tags">
<%= link_to series.name, series_url(:series => series.name) %>
</span>
<% end %>
</div>
<% end %>
<% unless @artwork.tags.blank? %>
<div class="col-xs-6 col-sm-6 col-md-4">
<p class="field-label">Tags</p>
<% @artwork.tags.each do |tag| %>
<span class="tags">
<%= link_to tag.name, tagged_url(:tag => tag.name) %>
</span>
<% end %>
</div>
<% end %>
인덱스 : 당신의 도움에 미리
<div id="artworks" class="transitions-enabled">
<% @artworks.each do |artwork| %>
<div class="box">
<%= link_to image_tag(artwork.image.url(:medium)), artwork %>
</div>
<% end %>
</div>
감사합니다!
BTW [이 링크] (http://www.howtogeek.com/howto/programming/ruby/ruby-if-else-if-command- syntax /)는 else 대신에 elsif를 사용해야한다는 것을 알아 냈습니다 if –