Tag Archives: before_save

before_save neturi grąžinti false

Gerai, jau gal antrą ar trečią kartą taip išsidūriau, tai dabar užsirašysiu :-)Rails modelyje before_* callback’ai neturi grąžinti false arba nil, nes įrašas nebus išsaugojamas.Pvz.:

before_save :set_gmap_available# ...# šis pavyzdys blogas: tais atvejais, kai latitude# arba longitude atributai nenurodyti, modelis neišsaugojamas.def set_gmap_available  self.gmap_available = !(self.latitude.blank? || self.longitude.blank?)end

O turėtų būti:

def set_gmap_available  self.gmap_available = !(self.latitude.blank? || self.longitude.blank?)  trueend

O jau buvau besiraunąs plaukus nuo galvos kodėl neišsaugo formos, kurių modeliai 100% validūs… :-)