У меня есть следующие модели
class User
attr_accesible :first_name, :phone_number
has_one :user_extension
end
class UserExtension
attr_accessible :company, :user_id
belongs_to :user
end
У меня есть таблица, которая содержит всех пользователей. И мне нужно отсортировать эту таблицу с помощью first_name, phone_number, компании. С first_name, phone_number у меня нет никаких проблем, порядок работает отлично, в примере
@users = User.order("first_name desc")
но мне также нужна сортировка по компаниям и не знаю, как это сделать.
И я могу получить название компании таким образом
@user.user_extension.company
Итак, у меня проблемы с sql, что даст мне всех пользователей, заказанных компанией. DB: PostgreSQL. Благодарю.
Edit:
Я должен предоставить дополнительную информацию об этих моделях.
create_table "user_extensions", :force => true do |t|
t.integer "user_id"
t.string "company"
end
create_table "users", :force => true do |t|
t.string "first_name"
t.string "phone_number"
end
Кроме того, я попытался использовать join
User.joins(:user_extension).order("user_extension.company desc")
и что я получаю
User Load (1.6ms) SELECT "users".* FROM "users" INNER JOIN "user_extensions" ON "user_extensions"."user_id" = "users"."id" ORDER BY user_extension.company desc
PG::Error: ERROR: relation "user_extensions" does not exist
о
User.includes(:user_extension).order("user_extension.company desc")
i также получаем
PG::Error: ERROR: relation "user_extensions" does not exist
Решенный У меня проблемы с моим bd, все соединения работают нормально.