[英]Case-insensitive search with will_paginate
我是Ruby的新手,所以如果這是一個愚蠢的問題,我深表歉意。 我正在嘗試將will_paginate與搜索字段一起使用,並且在使其區分大小寫方面遇到麻煩。 謝謝你的幫助!
從ratings_controller.rb:
def index
@ratings_by_name = Rating.paginate(:order => 'name ASC', :page => params[:page], :per_page =>10, :conditions => ['name like ?', "%#{params[:search]}%"])
@ratings_by_score = Rating.paginate(:order => 'score DESC', :page => params[:page], :per_page =>10, :conditions => ['name like ?', "%#{params[:search]}%"])
respond_to do |format|
format.html # index.html.erb
format.json { render json: @ratings_by_name }
end
end
從index.html.erb:
<div class="tabbable">
<ul class="nav nav-pills">
<li class="active"><a href="#tab1" data-toggle="tab">By Name</a></li>
<li><a href="#tab2" data-toggle="tab">By Score</a></li>
<li><form class="navbar-search">
<input type="text" class="search-query span3" placeholder="Search" name="search">
<div class="icon-search"></div>
</form></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab1">
<% @ratings_by_name.each do |rating| %>
<div class="rating">
<div class="row">
<div class="span7">
<strong><%= rating.name %></strong>
<div class="meta">
| <%= link_to 'View', rating %> |
<span class="admin">
<%= link_to 'Edit', edit_rating_path(rating) %> |
</span>
Rated on <%= rating.when_rated %>
</div>
</div>
<div class="span1">
<%= rating.score %>
</div>
</div>
</div>
<% end %>
嘗試使用“ LOWER(name)”作為訂單
@ratings_by_name = Rating.paginate(:order => 'LOWER(name) ASC', :page => params[:page], :per_page =>10, :conditions => ['name like ?', "%#{params[:search]}%"])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.