0

我正在 Rails 中构建单页应用程序。我在像这样单击按钮的根页面中成功填充了部分内容;

<div class="span12" style="margin-bottom:20px;">
            <%= link_to "Messages", "/messages", :class=>"btn btn-large btn-primary span12", :remote => true %>
</div> 

这成功地呈现了_index.html.erb部分。在此页面中有一个消息列表和删除它们的链接。当我删除它们时,我收到一个模板缺失错误,因为它正在寻找 index.html.erb 并localhost:3000/messages在删除消息后重定向到。这是我的销毁操作,在删除消息后被重定向

if @message.destroy
      flash[:notice] = "Message was successfully deleted"
      redirect_to messages_path
else
      flash[:error] = "Message could not be deleted please try again"
      redirect_to messages_path
end

我怎样才能让这个动作_index.html.erb再次渲染部分localhost:3000/

4

1 回答 1

0

每次删除消息时都不应该呈现部分索引。它应该只在javascript中完成。

我认为您可以执行以下操作:

$(".messages").on(".message .destroy-link", "ajax:success", function(data) {
    var $link = $(this);
    $link.closest(".message").remove();
})

在您的控制器中,您不会在任何地方重定向format.js.

于 2013-02-28T19:28:03.753 回答