Mein Problem ist: Jeder Eintrag in View ruft eine neue SQL-Abfrage auf, obwohl ich in Controller verwendet habe. Diese SQL-Abfragen sind nicht effizient. Jede Hilfe wird geschätzt.
Einstiegsmodell
has_many :training_entries
TrainingEntry-Modell
belongs_to :entry
Einträge Controller
@entries = Entry.includes(:training_entries)
Aussicht
<% @entries.each do |entry| %>
<% if entry.training_entries.where("category_id =?",1).exists? %>
ok
<% end %>
<% end %>
Antworten:
2 für die Antwort № 1<% @entries.each do |entry| %>
<% if entry.training_entries.detect { |t_entr| t_entr.category_id == 1 } %>
ok
<% end %>
<% end %>
Ändern Sie mit select, wenn Sie mehr als ein Element filtern müssen.