Рельсы для каждого цикла, не сохраняющие идентификатор DOM после обновления страницы - PullRequest
0 голосов
/ 05 октября 2018

У меня есть для каждого цикла, который отображает партиалы, каждый партиал - это элемент, который пользователь будет приносить на событие.Код ниже:

<div class="event_item_list" id="<%= user.id %>-<%= @event.id %>">
      <% user.event_items.each do |event_item| %>         
          <%= render 'event_item', event_item: event_item,  user: user %>
      <% end %>
</div>

Частичное выглядит следующим образом:

<div class="event_item_div" id="event_item_<%= event_item.id %>">
  <p class="event_item_title"><%= event_item.item.title %></p>
  <% if current_user && current_user == event_item.user %>
    <div class="pull-right"><%= link_to "Delete", event_item, method: :delete, remote: true %></div>
  <% end %>
</div>

Когда элемент добавляется в список из выбора коллекции, он успешно добавляется и сохраняется в базе данных.Я использую Jquery, чтобы скрыть вид.Все это прекрасно работает.

Если я хочу удалить элемент сразу после его добавления, но перед обновлением страницы, он успешно удаляется из базы данных и отображает правильное затухание Jquery.Я звоню id="event_item_<%= event_item.id %>" в частичном из Jquery, чтобы сделать это.Когда я смотрю на инспектора, он показывает id="event_item_(correct event_item.id here)".

Если я обновлю страницу и попытаюсь удалить уже добавленный элемент, он будет удален в базе данных, но не будет затухать в jquery или будетудалены вообще из вида, если я не обновлю страницу.Я открыл инспектор и обнаружил, что на частичном div с id="event_item_<%= event_item.id %>" он показывает только id="event_item_", без event_item.id.Это мешает Jquery правильно отображать.

Я не могу понять, как частичное проигрывает event_item.id во время обновления страницы.Он там есть, как только я первоначально добавляю его в список, но перехожу на обновление, хотя он все равно удаляется из базы данных, если я нажимаю кнопку удаления.

Любое понимание будет оценено!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...