2014-01-24 83 views
0

我正在尝试在Rails 4中创建一个搜索函数。我已经正确实现了它,它显示了我想要的结果,但它也返回并显示了整个数据库查询 - 表中的所有列包括密码摘要等我以前做过,但没有遇到过这样的问题。想知道我是否做错了什么。Rails搜索结果问题

这里是我的控制器:

def index 
    if params[:search] 
     @pro = Admin.search(params[:search]) 
    else 
     @pro = Admin.all 
    end 
end 

联系型号:

def self.search(search) 
    if search 
     where('name LIKE ?', "%#{search}%") 
    else 
     scoped 
    end 
end 

这是我的观点:

<%= @pro.each do |ind| %> 
<ul> 
    <li><%= ind.name %></li> 
</ul> 
<% end %> 
在Chrome

,我看到了个人的返回的名称从搜索中,如我所愿,加上元数据,如id:1,admin_id:2,name“”,email:“”,password_digest:“”et c。以数组格式。这是困扰我的东西,不知道为什么它显示这个。

当我用chrome检查页面时,数组刚刚粘贴在标签下。

当我删除@pro上的整个.each方法时,它会消失。任何人都可以提供的见解是值得赞赏

回答

4

视线应为<% @pro.each do |ind| %>。如果你在做<%= %>,结果就是实际的@pro数组,这就是为什么你要将它粘贴到标签下。