У меня были некоторые проблемы с поиском решения этой проблемы. По сути, у меня есть встроенный рубин, каждый цикл которого частично визуализируется для определенной подгруппы модели. Например:
<li id="thing">
<% items.each do |i| %>
<%= render :partial => 'item', :locals => {:i => i} %>
<% end %>
</li>
Мне было интересно, есть ли способ с помощью jQuery, AJAX или даже просто рельсов (я уверен, что у каждого из них есть реализуемое решение для меня, и меня интересуют все они), чтобы обновить этот список элементов. Причина, по которой я хотел бы иметь возможность сделать это, заключается в том, что в настоящее время я реализовал функциональность, позволяющую создавать «элемент» или обновлять существующий «элемент», опять же, без перезагрузки страницы (форма появляется в определенном контейнере при нажатии кнопки в обоих случаях), и я хотел бы, чтобы после отправки список автоматически обновлялся новой информацией или новым «элементом». Было бы лучше попытаться обновить весь список? Или есть способ добавить вновь созданный/обновленный объект в список частичных (как частичных) клиентских частей?
Я попробовал следующее утверждение, но я не могу избежать ошибки «неопределенный метод» при рендеринге.
$("#activeTab").append("<%= escape_javascript(render :partial => 'item', :locals => {:i => Item.order(:created_at).last}) %>");
Я подумал, что это было бы хорошим решением, потому что после того, как страница была перемещена и возвращена, список будет загружен снова. Это просто добавление к статическому списку, пока вы все еще находитесь на странице.
$("#activeTab").append("<%= escape_javascript(render :partial => 'item', :locals => {:i => Item.order(:created_at).last}) %>");
, потому что я еще не очень хорошо знаком с AJAX. - person Jake Smith   schedule 23.03.2013