У меня есть следующие модели:
#user.rb
class User < ActiveRecord::Base
has_and_belongs_to_many :groups
end
#group.rb
class Group < ActiveRecord::Base
has_and_belongs_to_many :users
end
#join table migration
class CreateGroupUserJoinTable < ActiveRecord::Migration
def self.up
create_table :groups_users, :id => false do |t|
t.integer :user_id
t.integer :group_id
end
end
def self.down
drop_table :groups_users
end
end
Мне нужно сделать следующий запрос:
@group = Group.find(:all, :include => users, :conditions => ["users count < ?", group_size]).first
Но это дает мне следующую ошибку:
SQLite3::SQLException: near "count": syntax error: SELECT "groups".* FROM "groups" WHERE (users count < 2) LIMIT 1
Я тоже пробовал это:
@group = Group.where("users count < ?", group_size).first
Но я получаю ту же ошибку. Что я делаю не так?