【发布时间】:2014-01-24 23:24:49
【问题描述】:
我正在尝试在 Rails 4 中创建一个搜索功能。我已经正确实现它并且它正在显示我想要的结果,但它也返回并显示整个数据库查询 - 表中的所有列,包括密码摘要等。我以前做过,但没有遇到过这样的问题。想知道我是否做错了什么。
这是我的控制器:
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: "" 等. 以数组格式。这让我很困惑,不知道为什么会显示这个。
当我在 chrome 中检查页面时,数组只是粘贴在标签的正下方。
当我删除 @pro 上的整个 .each 方法时,它就消失了。任何人都可以提供任何见解。
【问题讨论】:
标签: ruby-on-rails search