【发布时间】:2014-09-02 09:33:31
【问题描述】:
伙计们,我正在尝试使用 ajax 进行分页。
我有这个部分叫做 `_ofertas_ativas.html.erb
<h1>Ofertas Activas</h1>
<table class="table table-striped table-bordered">
<tr>
<%= ajax_section :id => "page", :render => "page" %>
</tr>
</table>
<p><%= link_to "ver todas", ofertas_path %></p>`
这里的页面部分:
<%= ajax_loadzone do %>
<% @ofertas_ativas.each do |oferta| %>
<td>
<p><%= link_to oferta.titulo, oferta_path(oferta) %></p>
<p><%= oferta.data_inicio %> a <%= oferta.data_fim %></p>
<p><%= oferta.corpo %></p>
<% if @user.role == "candidato" %>
<%= link_to "Candidatar-me", "/candidatura/#{current_user.candidato.id}/#{oferta.id}" , class: "btn btn-default btn-primary" %>
<% elsif current_user?(@user) %>
<%= link_to "Editar", edit_oferta_path, class: "btn btn-default btn-primary" %>
<% end %>
</td>
<% end %>
<% end %>
<%= ajax_links :section_id => "page" do %>
<%= will_paginate @ofertas_ativas %>
<% end %>
这是我的控制器:
def show
@user = User.find(params[:id])
if @user.role == "entidade"
@user_ent = Entidade.find_by("user_id = ?",params[:id])
@ofertas_ativas = @user_ent.ofertas.where("ativa = ?",true).paginate(page: params[:page], :per_page => 2)
respond_to do |format|
format.html
ajax_respond format, :section_id => "page"
end
当我单击下一个按钮或出现此消息的数字时:
AJAX Pagination EXTRA_CONTENT_DISCARDED:
Extra content returned by AJAX request ignored. Only a portion of the page content returned by the server was required. To fix this, explicitly call ajax_respond :section_id => "page" to render only the partial view required. This warning can be turned off in the ajax_pagination initializer file.
是因为我有 _ofertas_ativas 部分吗?我真的不知道如何解决这个问题。控制器中的这个respond_to我还是不是很明白。
有人知道怎么回事吗?
【问题讨论】:
-
你在使用 rails 4
-
是的,我正在使用 rails 4。但我认为这不是问题所在。是吗? ://
-
这个 gem 与 rails 4 有问题我把它放在答案块中
标签: jquery ruby-on-rails ruby ajax pagination