2017-05-29 80 views
0

我试图让rails应用程序。link_to嵌套的网址不嵌套

我有这个模型

class Company < ApplicationRecord 
    has_many :orders, dependent: :destroy 
end 
class Order < ApplicationRecord 
    belongs_to :company 
end 

我做了这个routes.rb中

resources :companies do 
    resources :orders, except: [:index] do 
    end 
end 
resources :orders, only: [:index] 

这是我的命令控制器

def index 
    @orders = Order.all 
    @company = Order.first.company 
end 

这是我的命令/ index.html.haml

- @orders.each do |order| 
    = link_to 'show', company_order_path(@company, order) 

我想要做的是制作一个link_to帮手company_order_pathorders#index。如果你知道或有想法,请告诉我。

如果我在我的oreders#索引中点击显示,它链接到公司/ 1/orders /:id。

+0

您加载所有'Order',只按'Company'第一个订单。如果阵列中的订单不属于同一家公司,您打算如何构建链接?你关心? – spickermann

+0

我显示订单属于公司#show中的公司。但是我想在订单#索引中显示所有订单。 – Mitsunobuk

回答

0

因为orders属于company你可以写它应该工作:

- @orders.each do |order| 
    = link_to 'show', company_order_path(order.company, order) 
+0

非常感谢!我已经完成了。我非常感谢你。 – Mitsunobuk

0

,如果你有代码类似

- @orders.each do |order| 
    = link_to 'show', company_order_path(@company, order) 
+0

这是我的index.html.haml - @ orders.each do | order | %tr %td = link_to'show',company_order_path(@company,order) 对不起,我忘了写。 – Mitsunobuk