Search code examples
ruby-on-railsrubyactivemodelactivesupport

Uniqueness constraint not affecting fields


class User < ActiveRecord::Base
  attr_accessible :username, :password
  attr_accessor :username, :password

  validates :username, :presence => true, :uniqueness => true
  validates :password, :presence => true
end

Test:

  it "prevents username duplication" do
    FactoryGirl.create(:user, username: 'ted').should be_valid
    FactoryGirl.build(:user, username: 'ted').should_not be_valid
  end

I've confirmed that User.count() is 2. What am I missing with the uniqueness constraint?


Solution

  • attr_accessor breaks models. Get rid of that line.