【发布时间】:2017-01-18 10:43:48
【问题描述】:
我有一个带有动作显示的控制器事件:
def show
@event = Event.get(params[:id])
if !connected? || !@event
return redirect_to request.referrer || root_path
end
@requests = @event.get_requests
end
在视图中 show.html.erb 我有
<script>
$(document).ready(
function() {
setInterval(function() {
$('#requests').load('/events/reload_requests');
}, 2000);
});
</script>
...
<div class="party-block" id="requests">
<%= render partial: 'requests' %>
</div>
...
javascript函数调用控制器方法events/reload_requests:
def reload_requests
@requests = @event.get_requests
render partial: 'events/requests'
end
以及部分_requests.html.erb的内容:
<%= Time.now %>
<h4><%= t '.requests' %></h4>
<% @requests.each do |r| %>
<span class="request">
...
<% end %>
问题:javascript 函数将我的 show.html.erb 页面的所有内容加载到 div #requests 中,但在 show.html 的副本中.erb 在 div 中,它会正确刷新 div #request : enter image description here 你可以看到,在 show#requests 我有 show 的内容。 比你
【问题讨论】:
-
我不确定我是否完全理解,但您在
show.html.erb和render partial: 'requests'中调用render partial: 'events/requests将在_requests.html.erb中指定完整路径'events/requests'在您的_requests.html.erb文件修复中你的问题? -
对不起,我不明白。我必须在 reload_requests 中更改渲染部分:“请求”以渲染部分:“事件/请求”?
-
是的,这就是我的建议
-
不行,我也有同样的问题
标签: jquery html ruby-on-rails refresh