Ладно, происходит странная вещь с передачей некоторых локальных переменных частичному с использованием модальной функции начальной загрузки.
Я создаю календарь в таблице.Каждая ячейка таблицы представляет дату в месяце.В каждой из этих ячеек есть кнопка с пометкой даты для этой ячейки.Идея состоит в том, что при нажатии этой кнопки открывается модальное окно со списком клиентов, у которых есть задачи в этот день.
Вот мой views/jobs/index.html.erb
<% count = 0 %>
<% 5.times do %>
<tr>
<% 7.times do %>
<td>
<% date = @calender_days[count] %>
<% client_set = create_client_set(date) %>
<%= render partial: 'day', locals: {jobs: @jobs, count: count, date: date, client_set: client_set} %>
<% client_set[0..2].each do |client| %>
<%= User.find(client).username %><br />
<% end %>
<% count += 1 %>
</td>
<% end %>
</tr>
<% end %>
Вот частичная ссылка в рендере, my views/jobs/_day.html.erb
<button type="button" class="align-text-bottom btn btn-primary btn-xs" data-toggle="modal" data-target="#day-tasks">
<%= date.strftime('%d') %>
</button>
<div class="modal fade" id="day-tasks" tabindex="-1" role="dialog" aria-labelledby="day-tasks-Label" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="day-tasks-ModalLabel"><%= date.strftime('%m/%d') %></h4>
</div>
<div class="modal-body">
<%= count %>
<% client_set.each do |client| %>
<h5><%= User.find(client).username %></h5>
<% end %>
</div>
<div class="modal-footer">
<button type="button" class="align-text-bottom btn btn-secondary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
Теперь странная вещь такова: <%= date.strftime('%d') %>
для кнопки в верхней части модального окна оценивается правильно, где date = @calender_days[count]
еще <%= count %>
в modal body
оценивается в 0 по всему календарю.Также обратите внимание, что <%= date.strftime('%m/%d') %>
в modal-title
соответствует первому дню в календаре.Таким образом, партиал получает значения с помощью кнопки, получающей правильные значения, но по какой-то причине модал не получает их.
Я действительно озадачен, это не имеет смысла.Заранее всем спасибо за помощь!