ActiveRecord time and datetime

Hi,

Suppose I have a model class which has a time field:

class CreateAppointments < ActiveRecord::Migration
def change
create_table :appointments do |t|
t.string :name
t.datetime :startTime
t.datetime :endTime
t.string :description

  t.timestamps
end

end
end

When I test drive it in rails console, I can input any value int he
startTime and endTime such as:

a = Appointment.new()
a.startTime = 1234
a.endTime = 5678
a.save()

My question is does Rails support some basic data type validation for us
so that we can always input a correct format?

Thanks,
Kahou

On 10 December 2011 17:34, kahou l. [email protected] wrote:

t.string :description
a.startTime = 1234
a.endTime = 5678
a.save()

My question is does Rails support some basic data type validation for us
so that we can always input a correct format?

The way to do it is to always go via a Time object. If the user is
entering data then parse that into a Time object then save that. If
you need to check that the time is in a particular range for example
then also include a validation in the model.

Colin

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs