0
嗨,我正在使用軌道插件acts-as-taggable-on
,我試圖找到名稱匹配和部分匹配給定查詢的前5名的最常用標籤。acts-as-taggable-on:找到名稱爲LIKE的標籤,按tag_counts排序?
當我做User.skill_counts.order('count DESC').limit(5).where('name LIKE ?', params[:query])
這返回以下錯誤:
ActiveRecord::StatementInvalid: SQLite3::SQLException: ambiguous column name: name: SELECT tags.*, COUNT(*) AS count FROM "tags" INNER JOIN users ON users.id = taggings.taggable_id LEFT OUTER JOIN taggings ON tags.id = taggings.tag_id AND taggings.context = 'skills' WHERE (taggings.taggable_type = 'User') AND (taggings.taggable_id IN(SELECT users.id FROM "users")) AND (name LIKE 'asd') GROUP BY tags.id, tags.name HAVING COUNT(*) > 0 ORDER BY count DESC LIMIT 5
但是當我做User.skill_counts.first.name
這將返回
"alliteration"
我在感謝所有幫助這件事。