2010-01-14 5 views
0

J'ai une requête AR en utilisant 'will_paginate' qui ressemble à ceci:activerecord Nested: include échoue

paginate :all, 
       :page => criteria[:page], 
       :per_page => criteria[:per_page], 
       :include => { :user, :person }, 
       :conditions => [conditions , criteria[:from_date], criteria[:to_date], criteria[:patient_id],criteria[:user_id]].concat(criteria[:actions]).concat(criteria[:types]).concat(criteria[:users]).concat(criteria[:statuses]).concat(criteria[:priorities]).compact, 
       :order => criteria[:order] 

Je reçois une erreur dans la clause de commande:

Unknown column 'user.person.last_name' in 'order clause' 

Je suis en train de commander par le nom de famille d'une personne. Comme vous pouvez le voir, j'ai inclus l'utilisateur et la personne dans un include imbriqué. L'utilisateur appartient à personne avec cette déclaration:

belongs_to :person, :class_name => 'Party', :foreign_key => 'person_id', :with_disabled => true 

personne est une sous-classe du Parti:

class Person < Party 

Party a un champ last_name

Répondre

3

L'ordre doit être par table_name.column, quelque chose comme les gens .last_name

+0

bon point ... party.last_name travaillé – Tony