模型导轨计算总价

用户名

我正在尝试从id数组计算总和。当我仅选择一个时,它可以正常工作,Servicio但在数组中显示以下消息:

    undefined method `+' for #<Servicio:0x9c14c5c>

Extracted source (around line #91):

88:         </div>
89:         <div class="large-3 columns">
90:           <strong><%= model_class.human_attribute_name(:total) %>:</strong></dt>
91:           <%= @recibo.total %>
92:         </div>
93:       </div>
94:     </div>

这是我的模特Recibo

class Recibo < ActiveRecord::Base
  attr_accessible :cajero, 
  :doctor_id, 
  :numero_recibo, 
  :paciente_id, 
  :total,
  :servicio_ids

  belongs_to :doctor
  belongs_to :paciente
  has_many :atencions
  has_many :servicios, :through => :atencions

  def total
    servicio_by_id = Servicio.find(servicio_ids)
    total = servicio_by_id.sum.precio
  end
end

谢谢!

卡洛斯·拉米雷斯三世

您需要指定方法Servicio应使用的哪个属性,sum因为Servicio该类并未实现+方法本身。

尝试这个

total = servicio_by_id.sum(&:precio)

这将增加了每个值Servicioprecio属性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章