【发布时间】:2011-11-06 18:05:34
【问题描述】:
在我的照片视图中,有一个使用 text_field 进行搜索的选项。我想通过单击预定义的标签来添加“搜索”选项。也许search 不是最好的方法。
这是我模型中的搜索方法:
def self.search(search)
if search
where('name or description or tag.name LIKE ?', "%#{search}%")
else
scoped
end
end
我也不确定我是否正确调用它...但这些是我在照片的索引视图中创建的链接:
<% @tags.each do |tag| %>
<%= link_to tag.name, :search => tag.name, :class => "tag" %>
<% end %>
Tags 不在照片表中,但与照片有 HABTM 关系。我通常可以用@photo.tags.name 或类似的东西来称呼他们。
无论如何,当我单击一个标签时,它会返回一个SQLite3::SQLException: no such column: tag.name: SELECT COUNT(*) FROM "photos" WHERE (name or description or tag.name LIKE '%landscape%')。有什么想法吗?也许一开始有更好的方法来做到这一点?
【问题讨论】:
标签: sql ruby-on-rails-3 filtering