Go back Web Development

Rails boolean field from checkbox to set datetime



<%= f.check_box :supplemental_terms_accepted %>


# a/m/user.rb
# supplemental_terms_accepted_at is DateTime

def supplemental_terms_accepted=(value)
  self.supplemental_terms_accepted_at = ActiveRecord::Type::Boolean.new.cast(value) ? Time.now : nil
end

def supplemental_terms_accepted
  supplemental_terms_accepted_at.present?
end