Act를 태그 가능 (Redux)으로 사용하여 특정 태그를 가진 객체 그룹을 찾고 표시하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1019747

문제

내 태그 쇼보기에 기사 목록을 표시하고 싶습니다. Rails 2.3.2 및 SQLITE3 앱에서 ACTS AT AT AS TAGGable Redux 플러그인을 사용하고 있습니다. 나는 그까지 멀었다 기본 예 나를 데려 가서 태그를 할당 한 다음 기사와 함께 목록을 표시합니다.

이제 태그에 속하는 기사 목록을 표시하고 있지만 다음 오류가 발생합니다.

undefined method `article' for #<Tag id: 1, name: "various", taggings_count: 1>

모델

/article.rb

class Article < ActiveRecord::Base  
  acts_as_taggable
end

/user.rb

class Tag < ActiveRecord::Base  
  acts_as_tagger
end  

제어 장치

/tags_contoller.rb

def show
  @tag = Tag.find(params[:id])
  @articles = @tag.articles
end  

보다

/tags/show.html.erb

<% for article in @articles %>  
   ...  
<% end %>  

여기에 있습니다 마이그레이션 파일에 링크.

매우 감사합니다.

도움이 되었습니까?

해결책 3

이것을 설명하기위한 Taggable Redux의 작품 인 Geemus에게 감사드립니다.

특정 태그가있는 기사 목록을 표시하려면 Tags_Controller를 변경해야합니다.

/tags_contoller.rb

def show
  @tag = Tag.find(params[:id])
  @articles = @tag.articles
end

에게:

컨트롤러 /tags_contoller.rb

def show
  @tag = Tag.find(params[:id])
  @articles = @tag.tagged
end

다른 팁

나는 플러그인이 여기서 비난하는 것이 아니라고 생각합니다. 웹 사이트에서 언급되지 않더라도 SQLite가 'table_name.column_name'구문을 이해할 수없는 것 같습니다. 제 경우에는 방금 MySQL로 전환했고 모든 것이 문제없이 진행되었습니다. 이것이 도움이되는지 확인하십시오.

문제는 객체라는 모델이 있다는 것입니다. ApplicationObject 또는 MediaObject와 같은 Ruby System 클래스와 겹치지 않는 이름을 제공하십시오.

왜 그것이 문제를 일으키는 지에 대해 추측 할 수는 있지만 추측 일뿐입니다. 오픈 클래스는 루비의 훌륭한 특징이지만, 루비와 레일의 수업과 구별되도록 수업을 신중하게 지정해야한다는 것을 의미합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top