Rails:两个松散相关的模型之间的关系

问题描述:

我正在研究Ruby on Rails 3 Web应用程序,但不知道如何关联两个模型。Rails:两个松散相关的模型之间的关系

在我们的组织销售代表外出约会。如果约会成功,将导致创建一个订单(然后将订单项目与其相关,但那是另外一天。)如果此约会不成功,它将被标记为不出售,并且您可能拥有猜测,没有订单创建。

另一方面,有时销售发生没有预约。例如,客户可能会打电话进店并订购一些东西。在这种情况下,订单可以在没有预约的情况下存在。

如果订单和约会之间没有关系,那将很简单,但最终用户的使用方便。例如,如果约会生成了订单,但是稍后买家取消,它们将标记约定为取消销售,然后系统应自动将订单设置为取消。同样,他们可能会选择取消订单,那么系统必须自动取消预约。

开发人员如何处理这样的事情?约会:have_many =>订单吗?做的顺序:belongs_to =>约会?我不知道该怎么办!

请帮助我,我是一个漂亮的新铁轨开发人员,我感到头脑发热!谢谢!

正如你已经说了,下面将正常工作:

class Appointment < ActiveRecord::Base 
    has_many :orders 
end 

class Order < ActiveRecord::Base 
    belongs_to :appointment 
end 

belongs_to的要求现场appointment_id存在于订单表。但是,如果订单未与订单关联,则不需要设置appointment_id。给定类可以有多个belongs_to关联。

+0

在一个侧面说明,看看这个问题,我会说`Appointment`可能`has_one:order` – edgerunner 2010-12-05 08:15:39