Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails搜索多个模块的多个属性_Ruby On Rails_Search_Nested Attributes - Fatal编程技术网

Ruby on rails rails搜索多个模块的多个属性

Ruby on rails rails搜索多个模块的多个属性,ruby-on-rails,search,nested-attributes,Ruby On Rails,Search,Nested Attributes,我正在尝试搜索我的票证模型中的所有列。大多数列都与所属的关联相关联,因此我必须搜索列中信息的属性,因为人们不知道ID 这些文章有助于: 到目前为止,我有下面的代码,但它只搜索最上面的参数。我怎样才能得到它,如果它在顶部搜索中没有找到任何东西,它就会尝试下一个。我会在这里添加更多内容 谢谢 def self.search(search) if search Ticket.joins(:submitter).where('first_name LIKE ?', "%#{search}

我正在尝试搜索我的
票证
模型中的所有列。大多数列都与
所属的关联相关联,因此我必须搜索列中信息的属性,因为人们不知道ID

这些文章有助于:

到目前为止,我有下面的代码,但它只搜索最上面的参数。我怎样才能得到它,如果它在顶部搜索中没有找到任何东西,它就会尝试下一个。我会在这里添加更多内容

谢谢

def self.search(search)
  if search
    Ticket.joins(:submitter).where('first_name LIKE ?', "%#{search}%")
  elsif  
    Ticket.joins(:issue).where('name LIKE ?', "%#{search}%")
  else
    all
  end
end
我发现了,在这里更新了正确的代码:

def self.search(search)
case search 
when /^[-+]?[0-9]*\.?[0-9]+$/
  Ticket.find(:all, :conditions => ['id LIKE :search', {:search => "%#{search}%"}])
else
  Ticket.joins(:submitter,:issue).find(:all, :conditions => ['name LIKE :search OR first_name LIKE :search', {:search => "%#{search}%"}])
end
end

更新了上面的代码-找到答案

作为函数参数传入的是什么?这是您要查找的吗<代码>“搜索票证”,:type=>“搜索”%>
这是在我的票证控制器中
@tickets=Ticket.where(:school\u id=>@current\u user.school\u id)。order('id DESC')。Search(params[:Search])