尝试在Customer和Contact模型之间建立非常基本的关联。
Customer has_many :contacts
Contact belongs_to :customer
User has_many :customers
路线
resources :customers do
resources :contacts
end
我不希望/联系人可以访问
当我添加我的观点时
new_customer_contacts_path
我有错误。如果我有
new_customer_contact_path(contact)
它有效,但链接到联系#show是错误的 - >它指向客户/ 7 / contact / 2,它应该是customers / 2 / contact / 7
有什么想法吗?
答案 0 :(得分:0)
你必须告诉客户谁的联系人姓名!
如下所示:
# Customer.first and Contact.first can be exchanged to instances
# of Customer or Contact!
new_customer_contacts_path(Customer.first)
edit_customer_contact_path(Customer.first, Contact.first)
customer_contacts_path(Customer.first)
答案 1 :(得分:0)
new_customer_contact_path(contact)
这是错误的。您应该将客户传递给它而不是联系。
如果您想显示客户的联系方式,您应该使用customer_contact_path(客户,联系方式)。
供参考,请转到http://guides.rubyonrails.org/routing.html并搜索“从对象创建路径和网址”
答案 2 :(得分:0)
使用嵌套路由,您需要按照路径中列出的顺序传递对象(或至少其ID)。在'new'的情况下,您只需要传递父对象id,因为新的嵌套对象还没有id。
new_customer_contact_path(customer)