У меня следующий запрос, который не выполняется в rails s
в конкретном контроллере. Это не сбой в rails c
.
Post.includes(:user).find(:all, :limit => 10, :order => 'users.display_name ASC')
В консоли возвращает правильные данные. На сервере я получаю эту ошибку
ActiveRecord::StatementInvalid: PGError: ERROR: column posts.users.display_name does not exist
LINE 1: ...s_count" AS t0_r7, "posts"."popularity" AS t0_r8, "posts"."u...
^
Запрос длинный, и я просто включу несколько соответствующих фрагментов
: SELECT "posts"."id" AS t0_r0, "posts"."post_content" AS t0_r1,
...
"posts"."popularity" AS t0_r8, "posts"."users.display_name" AS t0_r9,
"posts"."subtopics.name" AS t0_r10, "posts"."categories.category_name"
AS t0_r11
...
FROM "posts" LEFT OUTER JOIN "users" ON "users"."id" = "posts"."user_id"
ORDER BY users.display_name ASC LIMIT 10
В контроллере запрос генерирует 3 дополнительных условия. Запрос помечает их как t0_r9, t0_r10 и t0_r11. Кажется, что AR добавляет это, потому что я ссылаюсь на эти конкретные столбцы в представлении этого действия контроллера. Я не понимаю, почему он это сделал, так как это цель использования includes
.