Earlier it was working fine. I have been playing little bit config. So may be i have changed some config unknowingly.
here is config of environment/development.rb
reload! only reloads the latest code in the console environment. It does not re-initialize existing objects.
This means if you have already instantiated any objects, their attributes would not be updated - including newly introduced validations. However, if you create a new object, its attributes (and also validations) will reflect the reloaded code. more here
Are you reloading the object from the database?
For example:
>> a = User.last
=> #<User id: 16, email: "asdfadsf@sdfdsf.com">
>> reload!
Reloading...
=> true
'a' won't reflect any changes to your model until you reload it from the db.