【发布时间】:2023-04-02 13:56:01
【问题描述】:
伙计们!我开始学习RAILS。 我有一个使用分页的微博列表。当我销毁微博时,它会转到第一页。但是我想当我销毁一个微博时,它会重新加载当前页面。
这是我的代码:
static_pages_controller.rb
def home
return unless logged_in?
@micropost = current_user.microposts.build
@feed_items = current_user.feed.paginate(page: params[:page])
end
microposts_controller.rb
def destroy
@micropost.destroy
@feed_items = current_user.feed.paginate(page: params[:page])
respond_to do |format|
format.html { redirect_to request.referrer || root_url }
format.js
end
end
destroy.js.erb
$("#microposts").html("<%= escape_javascript(render('shared/feed')) %>");
_microposts.html.erb
<% if current_user?(micropost.user) %>
<%= link_to "Delete", micropost, remote: true,
method: :delete,
data: { confirm: "You sure?" } %>
<% end %>
_micropost.html.erb
<ol class="microposts" id="microposts_profile">
<%= render @microposts %>
</ol>
<%= will_paginate @microposts %>
你有什么想法来处理这个问题吗?
【问题讨论】:
-
需要重定向到home还要传入page参数
-
params[:page]在destroy操作中是否返回正确的页码? -
@nsave 它不是返回页码,所以我无法重新加载正确的页面。
标签: ruby-on-rails ruby ajax ruby-on-rails-3