2015-04-13 5 views
1

У меня есть 2 модели. Модель пользователя и модель микропоста. Обе эти модели являются taggable.Rails 4: Использование act_as_taggable_on для соединения двух моделей, имеющих общие метки

User.rb

acts_as_taggable 
acts_as_taggable_on :tags 

Micropost.rb

acts_as_taggable 
acts_as_taggable_on :tags 

теги исполняются из общего списка 30 различных "темы".

Я пытаюсь найти вопросы, связанные с пользователями теги т.е. microposts, что пользователь может быть заинтересован.

Очевидно, чтобы найти пользователей с общими тегов вы можете

@users = @user.find_related_tags 

Но как вы можете сделать это через 2 модели.

Я пытался что-то глупое, как

micropost = Micropost.new 
micropost.tag_list = current_user.tag_list 
@questions_list = micropost.find_related_tags 

Где я надеялся @questions_list бы массив связанных microposts.This не работает

Есть мысли?

ответ

1

А что-то вроде

Micropost.tagged_with(@user.tag_list, :on => :tags, :any => true) 

Основываясь на this section from the docs.

+0

Ah drats. Я пробовал это, но моя версия была не совсем корректной. Вы, сэр, много меня спасли. Большое спасибо.....! – GhostRider

+0

У меня есть модель 'Product', которая' has_many: таксоны, через:: классификаторы'. Как реализовать 'act_as_taggable_on' для реализации маркировки профитов с именами таксонов? – vipin8169

 Смежные вопросы

  • Нет связанных вопросов^_^