Уже несколько часов я безуспешно пытаюсь заставить работать сфинкс-прицелы.
Я хочу использовать теги ActsAsTaggableOn. В моей модели (с возможностью тегирования) я пробовал следующие области действия:
# This normal scope works
scope :tagged, lambda {
joins(:taggings => :tag).
where("tags.name = 'consequatur'")
}
# fails! (can't convert ActiveRecord::Relation into Hash)
sphinx_scope :tagged do
joins(:taggings => :tag).
where("tags.name = 'consequatur'")
end
Еще одна попытка со старыми условиями:
# works with normal scope (returns one record)
scope :tagged, :joins => :taggings, :conditions => {"taggings.tag_id" => 74}
# fails! (returns nothing)
sphinx_scope(:tagged) do
{:joins => :taggings, :conditions => {"taggings.tag_id" => 74}}
end
Как я могу заставить эти области работать? Есть ли другой способ заархивировать эту задачу? Я хочу искать только те модели, которые помечены определенным тегом.