オプションの子プロパティを持つモデルのルートをどのように作成しますか?ヘルプデスクアプリを作成しているとしましょう。チケットは、顧客が以前に注文したものに関連付けられているか、カタログ内のまだ注文していないアイテムに関するものである可能性があります。
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はnull可能です。
そのため、クローズドオーダーページのorder_idの横に「カスタマーサービスチケットの作成」リンクがあり、製品カタログページのitem_idの横に同様のリンクがあります。
URL構造は次のようになると思います。
customer_service_ticket / new / order / 123
注文に関連して作成されたチケットの場合
と
customer_service_ticket / new / item / 789
アイテムに関連して作成されたチケットの場合
どちらも存在しない場合はcustomer_service_ticket/newのみ(顧客が一般的な質問をしている場合にも有効)
ルートを最も効率的に構成するにはどうすればよいですか?私は上記のURL構造と結婚していません。もっと良い方法があれば、喜んで試してみます。