我正在尝试从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)
这将增加了每个值Servicio
的precio
属性。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句