Ich versuche nur bestimmte Spalten mit eager_load
zu wählen, aber ich stehe vor dem Problem, dass es meine 'Select' storniert.Rails 4 - Wählen Sie mit eiger_load
Modell:
class Timeline < ActiveRecord::Base
belongs_to :timeline_category, foreign_key: :timeline_category_id
belongs_to :user, foreign_key: :user_id
scope :with_relations, -> { eager_load(:timeline_category).eager_load(:user).order(created_at: :desc)
end
Abfrage:
Timeline.select('timelines.*, users.username, timeline_categories.icon').eager_load(:timeline_category).eager_load(:user)
Ich habe auch versucht:
Timeline.select('timelines.*, users.username, timeline_categories.icon').with_relations
Aus irgendeinem Grund hält sie alle Spalten aller drei Tabellen Auswahl . Wie kann ich es reparieren?
Ich habe ein ähnliches Problem hat, wie Ich erinnere mich, Sie können nur benutzerdefinierte Spalten hinzufügen, aber Sie können sie nicht selektiv abrufen, da die Methode immer alle Spalten abruft. – potashin