Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.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/5/ruby-on-rails-4/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 如何查找slug找到的具有友好ID的记录的关联记录?_Ruby On Rails_Ruby On Rails 4_Friendly Id - Fatal编程技术网

Ruby on rails 如何查找slug找到的具有友好ID的记录的关联记录?

Ruby on rails 如何查找slug找到的具有友好ID的记录的关联记录?,ruby-on-rails,ruby-on-rails-4,friendly-id,Ruby On Rails,Ruby On Rails 4,Friendly Id,我已经实现了友好的ID,现在我很难通过slug将公司的机会关联起来(我通过ID可以很好地工作) 公司财务总监: def show @opportunities = Opportunity.where("company_id = ?", params[:id]).paginate(:page => params[:page], :per_page => 25) end 商机模型有一个公司id列。(公司有很多机会)。因此,上面的工作非常完美,因为我的URL是“compa

我已经实现了友好的ID,现在我很难通过slug将公司的机会关联起来(我通过ID可以很好地工作)

公司财务总监:

  def show
    @opportunities = Opportunity.where("company_id = ?", params[:id]).paginate(:page => params[:page], :per_page => 25)
  end
商机模型有一个公司id列。(公司有很多机会)。因此,上面的工作非常完美,因为我的URL是“companys/1”

由于我已经实现了友好ID,我现在在公司模型中有了一个“slug”列。所以本质上我需要将公司ID与Opportunity ID匹配,然后抓住slug

我正在尝试类似的方法,但不起作用:

  def show
    @opportunities = Opportunity.where("company_id = ?", params[:id]).find(params[:slug]).paginate(:page => params[:page], :per_page => 25)
  end
我应该怎么做呢


谢谢。

您可以使用友好的发现,类似这样的东西

def show
  @company = Company.friendly.find(params[:id])
  @opportunities = @company.opportunities.paginate(:page => params[:page], :per_page => 25)
end

希望这能有所帮助

我总是试图让事情变得更困难!非常感谢。不用担心,很高兴我能帮忙