如何为模型Rails中的相关对象生成多个实例?

时间:2016-04-10 12:29:30

标签: ruby-on-rails ruby ruby-on-rails-4 activerecord

我有两个模型,一个是 Resident ,另一个是 Bill

票据 - >的 belongs_to的:居民

居民 - >的的has_many:票据

  

如何为所有居民生成账单?

像点击“立即生成”按钮后一样。必须为每位居民创建账单。 票据将使用三种模式创建

  

离开模型 - > belongs_to:居民

     

属性 - > start_date:datetime,end_date:datetime

     
    
      

rate_card模型 - > belongs_to:hostel

             

属性 - > 饮食:整数,charge1:int,charge2:intcharge3:int

             

帐户模型 - > belongs_to:resident

             

属性 - > 罚款:int,离开:离开表的结束开始日期的差异

    
  
     

账单模型 - > belongs_to:resident

     

属性 - > From_date:date,to_date:date,payable_amount:int,is_paid:bool

账单包含可使用公式生成的应付金额:

应付金额:30 *饮食+收费1 +收费2 +收费3 +罚款*离开

我应该如何为每位居民创建账单? 我需要一个关于创建方法的想法,谢谢!!

帮我解决问题.. xD

2 个答案:

答案 0 :(得分:1)

好吧,如果您只想创建实例,可以执行以下操作:

bills = Resident.all.map {|resident| resident.bills.create }

获取一系列创建的账单。

答案 1 :(得分:-2)

我认为它想为所有居民生成账单:

Resident.all.each do |r|
  bill = Bill.new({:resident_id => r.id, :amount => value, :description => "Yadda yadda"})
  bill.save
end

它应该确保它添加了正确的属性,似乎它可能将bill信息作为参数传递给控制器​​。