2017-05-29 128 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