【问题标题】:Adding a Second Attribute to Basic Search (Rails 3)向基本搜索添加第二个属性(Rails 3)
【发布时间】:2012-02-07 20:03:59
【问题描述】:

大家好,我这里有一个基本的搜索功能,允许我按名称搜索用户,我还想添加一个电子邮件属性,但我不知道如何。我认为这应该是一个相对容易的解决方法。以下是所有相关代码:

搜索表单:

<%= text_field_tag :search, params[:search], :class => 'search_field' %>
<%= submit_tag "Search", :name => nil %>

控制器:

@usersearch = User.search(params[:search])

用户模型:

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

提前致谢!

【问题讨论】:

  • 您是要搜索姓名,然后搜索与部分姓名相匹配的电子邮件,还是要在搜索词看起来像电子邮件地址时搜索电子邮件?

标签: ruby-on-rails ruby ruby-on-rails-3 model-view-controller ruby-on-rails-3.1


【解决方案1】:

只需在电子邮件中添加 OR 语句:

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

【讨论】:

    猜你喜欢
    • 2011-12-03
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    • 2014-11-02
    • 1970-01-01
    相关资源
    最近更新 更多