我有一个带有Pins模型和Posts模型的Rails应用程序。我有搜索设置,并为主页上的引脚工作。 (请参阅下面的代码)我现在正在向网站添加博客,我想在博客页面上搜索帖子。如果我将以下代码全部复制到博客(模型,控制器和视图信息),则网址将更改为
http://localhost:3000/posts?search=searchterm
但帖子没有对页面做出反应。我是否需要在帖子模型中为“搜索”提供不同的方法名称,因此它不会干扰引脚模型中的方法名称?还有别的我做错了吗?
我的工作图钉模型中的搜索代码:
模型:(是的,我更改了在新帖子模型中粘贴时搜索的属性)
def self.search(search)
if search
losearch = search.downcase
find(:all, :conditions => ['lower(description) LIKE ? OR lower(artist) LIKE ? OR lower(album) LIKE ? OR lower(year) LIKE ?', "%#{search.downcase}%", "%#{search.downcase}%", "%#{search.downcase}%", "%#{search.to_s.downcase}%"], order: "created_at desc")
else
find(:all, order: "created_at desc")
end
end
控制器:(我改变了所有提到的针,发布)
def index
@pins = Pin.search(params[:search])
@pins = @pins.paginate(:page => params[:page], :per_page => 50)
respond_to do |format|
format.html # index.html.erb
format.json { render json: @pins }
# format.js
end
end
视图:
<form class="navbar-form" role="search">
<div class="input-group pull-right">
<input type="text" class="form-control" placeholder="Search" name="search" id="search">
<div class="input-group-btn">
<button class="btn btn-default" type="submit"><i class="glyphicon glyphicon-search"></i></button>
</div>
</div>
</form>