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.

Reply via email to