validation on nested models

this validation in my model only works for the first nested model. Why is that?

def treatment_must_have_preptype    errors.add(:preptype, I18n.translate('activerecord.errors.messages.nestedTrempty')) if treatment_preptype_empty? end

def treatment_preptype_empty?    if !treatments.empty?     treatments.all? {|treatment| treatment['preptype'].blank? }    end end