Doctrine: DATETIME default NOW()
I’ve been struggling with setting up a database schema for a new Zend Framework project. I’m using trying to use Doctrine ORM for my database models. I need to set up the schema so that it allowed me to set a default date and time for a `datetime` column, e.g. when adding a new message I get the current timestamp. After much searching and experimenting I found the solution so I’m sharing it.
In your schema YAML file simply do the following:
Message:
actAs:
Timestampable:
created:
name: created_at
type: timestamp
format: Y-m-d H:m:s
updated:
name: last_updated
type: timestamp
format: Y-m-d H:m:s
columns:
id:
type: integer
primary: true
autoincrement: true
name: string(255)
email: string(300)
message: string(2000)
If on the other hand you don’t want an `updated_at` column you can use the following:
Message:
actAs:
Timestampable:
created:
name: created_at
type: timestamp
format: Y-m-d H:m:s
updated:
disabled: true
columns:
id:
type: integer
primary: true
autoincrement: true
name: string(255)
email: string(300)
message: string(2000)












































That worked a treat for me :D thanks for that, i had seen something like this when looking at doctrine examples but when i actually wanted to do it i could not find anything about it hehe.