如何为具有选项子属性的模型创建路由?假设我正在创建一个帮助台应用程序,并且该工单可能与客户之前与我一起拥有的订单相关联,或者可能与他们尚未订购的目录中的项目相关联。
class CustomerServiceTicket
belongs_to :order
belongs_to :item
belongs_to :buyer
belongs_to :customer_service_category
end
class Order
...
has_one :customer_service_ticket
...
end
class Item
...
has_one :customer_service_ticket
...
end
在 customer_service_ticket 的架构中,order_id 和 item_id 可以为空。
因此,我将在他们关闭的订单页面上说他们的 order_id 旁边有一个“创建客户服务票”链接......以及产品目录页面上 item_id 旁边的类似链接。
我在想 url 结构应该是这样的:
customer_service_ticket/new/order/123
对于创建的与订单相关的工单
和
customer_service_ticket/new/item/789
对于创建的与项目相关的工单
并且只有 customer_service_ticket/new 两者都没有(也适用于客户只有一般问题的情况)
我将如何构建最有效的路线?我没有与上面的 URL 结构结婚,如果有更好的方法我很乐意尝试。