I ont des modèles:association named_scope has_many largeur et compter
class User < ActiveRecord::Base
has_many :user_skills
end
class UserSkill < ActiveRecord::Base
belongs_to :user
named_scope :rated, :conditions => "count_raters > 0"
end
Je veux obtenir le nombre de compétences notées.
current_user.user_skills.rated.cont
Cela fonctionne très bien, mais le SQL généré est très étrange.
SELECT count(*) AS count_all FROM `user_skills` WHERE (((count_raters > 0) AND (`user_skills`.user_id = 988988934)) AND (`user_skills`.user_id = 988988934))
Pourquoi deux fois user_id? Comment éviter de doubler le champ user_id?