在哪里放置影响多个模型的代码

时间:2012-12-31 00:58:22

标签: ruby-on-rails-3

每天下午5点,我想为过去24小时内生成的所有新订单模型生成一个发票模型。

该方法应该驻留在哪些选项中?

将此作为Order模型本身的方法有什么问题吗? e.g。

class Order < ActiveRecord::Base
  def generate_invoice
    invoice = Invoice.new
    ...
    return invoice
  end
end

1 个答案:

答案 0 :(得分:0)

我认为您应该创建一个模块并将其包含在模型中

前:

module Invoice
  def generate_invoice
    invoice = Invoice.new
    ...
    return invoice
  end
end

并在你的模特中

class Order < ActiveRecord::Base
  include Invoice
end

HTH