Ruby:如何使用户对象的属性全部小写以进行搜索?
我正在为我的用户模型运行自定义搜索方法。但是它区分大小写...如何暂时将我的用户对象模型属性更改为搜索方法的全部小写?
例如:
如果有人搜索“Joe”,并且有 2 个名为 Joe 和 joe 的用户,两者都应该显示.. 而不仅仅是 Joe
在我的用户控制器中
def search
search = params[:search_user].downcase
@users = User.search(search)
end
在我的用户模型中:
def self.search(search_user)
if search_user
#make firstname here!!!!
find(:all, :conditions => ['firstname LIKE ?', "#{search_user}"] )
else
find(:all)
end
end
I am running a custom search method for my Users model. However it's case sensitive... How do I temporarily change my User object model attributes to be all lower case for my search method?
for example:
if someone searches "Joe", and there are 2 users named Joe, and joe, both should show up.. instead of just Joe
In my User controller
def search
search = params[:search_user].downcase
@users = User.search(search)
end
In my User model:
def self.search(search_user)
if search_user
#make firstname here!!!!
find(:all, :conditions => ['firstname LIKE ?', "#{search_user}"] )
else
find(:all)
end
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
find(:all, :conditions => ['LOWER(firstname) LIKE ?', search_user.downcase])
find(:all, :conditions => ['LOWER(firstname) LIKE ?', search_user.downcase])