我正在关注从 railscasts 修改的高级搜索表单,我想对搜索结果进行分页,但我不知道分页代码放在哪里。
我有一个模型:
矿物搜索.rb
class Mineralisearch < ActiveRecord::Base
attr_accessible :keywords,:keywords1
def segnalazione_mineralis
@segnalazione_mineralis ||= find_segnalazione_mineralis
end
private
def find_segnalazione_mineralis
segnalazione_mineralis = SegnalazioneMinerali.order(:titolo)
segnalazione_mineralis = segnalazione_mineralis.where("titolo like ?", "%#
{keywords}%") if keywords.present?
segnalazione_mineralis
end
end
我有一个控制器 Mineralisearches_controller.rb
class MineralisearchesController < ApplicationController
def new
@mineralisearch = Mineralisearch.new
end
def create
@mineralisearch = Mineralisearch.create!(params[:mineralisearch])
redirect_to @mineralisearch
end
def show
@mineralisearch = Mineralisearch.find(params[:id])
end
end
和一个视图
显示.html.erb
<h1>Risultati della ricerca</h1>
<table class="table1">
<tr>
<th>Titolo:</th><br>
<th>Creato il:</th>
<th>Ultima Modifica il:</th>
<th></th>
</tr>
<%= render @mineralisearch.segnalazione_mineralis %>
</table>
使用这个部分 _segnalazione_minerali.html.erb
<tr>
<td><%= segnalazione_minerali.titolo %> </td>
<td><%= l(segnalazione_minerali.created_at, format:"%e %B %Y %k:%M:%S") %></td>
<td><%= l(segnalazione_minerali.updated_at, format:"%e %B %Y %k:%M:%S")%></td>
<td><%= link_to 'Mostra', [segnalazione_minerali.user, segnalazione_minerali]%></td>
</tr>
我知道我必须放一些代码
@mineralisearch = Mineralisearch.order("Titolo").page(params[:page]).per_page(10)
在控制器中
和
<%= will_paginate @mineralisearch, :previous_label => 'Prec', :next_label => 'Succ' %>
但我真的不知道在哪里!我试图将它们放在显示视图和控制器中,但它们不起作用!
谢谢大家的帮助