Я пытаюсь оптимизировать (ограничить) запросы в представлении.Я использую функцию fields_for .Мне нужно ссылаться на различные свойства объекта, такие как имя пользователя для отображения.Однако это таблица rel, поэтому мне нужно присоединиться к моей таблице пользователей.Результатом является N подзапросов, 1 для каждого поля в fields_for .Это сложно объяснить, но я думаю, что вы поймете, что я спрашиваю, если я вставлю свой код:
<%= form_for @election do |f| %>
<%= f.fields_for :voters do |voter| %>
<%= voter.hidden_field :id %>
<%= voter.object.user.preferred_name %>
<% end %>
<% end %>
У меня около 10 000 пользователей, и во многих случаях в каждых выборах участвуют все 10 000 пользователей.Это 10 000 подзапросов при каждой загрузке этого представления.Я хочу fields_for , чтобы присоединиться к пользователям.Возможно ли это?
Я хотел бы сделать что-то вроде:
...
<%= f.fields_for :voters, :joins => :users do |voter| %>
...
<% end %>
...
Но это, конечно, не работает: (