Rails 5.2 каждый оператор без дубликатов значений - PullRequest
0 голосов
/ 29 августа 2018
<% Schedule.all.each do |schedule| %>
  <%= link_to schedule.county, events_path(County: schedule.county) %>

Отображение дубликатов в таблице расписания.

Я попробовал все ниже без удачи в отображении дубликатов.

<% Schedule.all.each.uniq do |schedule| %>

<% Schedule.distinct.pluck(:county) do |schedule| %>

<% Schedule.distinct.each.pluck(:county) do |schedule| %>

По какой-то причине они ничего не отображают.

Edit:

Ассоциации -

Событие has_many: schedule, inverse_of:: event Расписание принадлежит: событие

Итак, каждый блок в оригинале приносит то, что я хочу, но захватывает округ для каждого расписания в базе данных. Это приводит к дублированию списков округов. Я пытаюсь удалить эти дубликаты, которые, как я предполагал, были достаточно простыми, добавив в оператор метод uniq, но похоже, что для этого требуются объединения. Спасибо.

Ответы [ 2 ]

0 голосов
/ 29 августа 2018
<% Schedule.select(:county).distinct.each do |schedule| %>

Похоже, мне не нужно было объединяться. Это было больше просто выбор, а затем использовать отличный метод, который работает. Спасибо @Tacyons за то, что направили меня в правильном направлении.

0 голосов
/ 29 августа 2018

Это зависит от связи между графиком и моделью страны. Предполагая, что Расписание принадлежит стране

<% Schedule.joins(country).select(:country).distinct.each do |schedule| %>
  <%= link_to schedule.county, events_path(County: schedule.county) %>
<% end %>
...