Assign sysdate instead of the result of DateTime::now()


#1

Hi rails devs,

I’ve put the following code in a model:

protected
  def validate
    self[:lastupdate] = DateTime::now()
  end

I wonder how I could get “sysdate” instead of the result of
DateTime::now() in the generated SQL request. The goal is to get the
database server time and not the application server time. You’ve
already figure out that I’m using Oracle ;).

I have 2 solutions:

  • hack quote() into OracleAdapter
  • add a trigger directly on the oracle table

Is somebody would have a better solution?

Regards,

Florent,


#2

Is the issue that the app server time is inconsistent with the
database server, or is it a time zone issue? If it’s the latter, I
would suggest you store all dates as GMT and just let rails set
created_at and updated_at for you automatically.

On Feb 17, 5:04 am, Florent G. removed_email_address@domain.invalid