コントローラーにこれらがあります:
class AccountsController < ApplicationController
def index
@search = Account.search(params[:search])
@accounts = @search.order("id desc").includes(:chef).page(params[:pagina]).per(10)
end
end
私の見解:
<%= f.text_field :username_or_email_or_chef_name_contains %>
正常に動作します!しかし、email に基づいて検索すると、次のエラーが発生しました。
ActiveRecord::StatementInvalid in Accounts#index
Mysql2::Error: Column 'id' in order clause is ambiguous: SELECT `accounts`.`id` AS t0_r0, `accounts`.`chef_id` AS t0_r1,...
アカウント コントローラーの.includes(:chef)を外すと、正常に動作します。
質問
なぜこのエラーですか?include
パフォーマンス上の理由から、アカウント コントローラーからを削除したくありません。