Превратить оператор if в именованную область
<% @training_dates.reverse.each do |t| %>
<% if t.candidate_limit != Subscription.group(:training_date_id).count[t.id] %>
<%= t.name %>
<% end %>
<% end %>
Я хочу превратить это if
заявление в сферу, чтобы я мог сделать @training_dates.(scope).reverse.each
,
1 ответ
Я не знаю, каковы ваши другие модели, но примерный объем для training_date
модель должна как следует (для rails
4):
class TrainingDate
scope :sss, -> do
where.not(candidate_limit: Subscription.group(:training_date_id).count(:id))
.order(:desc)
end
end
а потом:
sss.each { |t| t.name }
Для других rails
Версии, которые вы должны использовать для пользователя arel gem.