On Oct 16, 11:49 am, Colin Law <[email protected]> wrote: > On 16 October 2011 05:35, Hesham <[email protected]> wrote: > > > I have the following class in a Rails 3.1.1 app: > > > class User < ActiveRecord::Base > > > attr_accessible :email, :password, :password_confirmation, :remember_me, > > :username, :admin, :moderator, :bio > > validates_presence_of :username > > validates_uniqueness_of :username, :case_sensitive => false > > validates_uniqueness_of :email, :case_sensitive => false > > and in my migrations: > > > add_index :users, :email, :unique => true > > add_index :users, :username, :unique => true > > > However, when I try to create two users with duplicate emails or > > usernames I get a DB level exception rather than a failing validation: > > If you look in the log can you see it doing the query to look for an > existing matching email or username? > > Colin
No, there is no such query, just an insert of the record which is producing the exception. > > > > > ActiveRecord::RecordNotUnique in RegistrationsController#create > > PGError: ERROR: duplicate key value violates unique constraint > > "index_users_on_username" > > > There are other validations that work perfectly, but why aren't the > > uniqueness validations being performed before the DB create? > > > -- > > You received this message because you are subscribed to the Google Groups > > "Ruby on Rails: Talk" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]. > > For more options, visit this group > > athttp://groups.google.com/group/rubyonrails-talk?hl=en. > > -- > gplus.to/clanlaw -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

