Во-первых, тема.
У меня есть три модели, которые связаны между собой с помощью ассоциации через has_many: как это:
#User model
has_many :chars_del, :class_name => CharDelegated, :dependent => :destroy
has_many :chars, :through => :chars_del
#CharDelegated model
#has a field owner:integer
belongs_to :char
belongs_to :user
#Char model
#has fields name:string
has_many :chars_del, :class_name => CharDelegated
has_many :users, :through => :chars_del
Что мне нужно сделать, это янеобходимо выполнить поиск в пользовательской записи, чтобы найти все символы, принадлежащие конкретному пользователю (поле: owner), упорядоченные по имени.Я застрял с этим в течение пары часов, поэтому я считаю, что мог пропустить очень простой ответ ... Но ничего, что я пробовал до сих пор, не сработало даже немного.
ОБНОВЛЕНИЕ нашел что-то, что работает:
user.chars.where(:char_delegateds => {:owner => 1}).order('name')
не знаю, почему: chars_del выдал ошибку, но полное имя таблицы выполнило задание.
Эндрю, ваш ответ тоже работает хорошо и немного быстрее в базе данных, чем много.