Hello,

I want to restrict my users having more than one address. 

Here are the definitions from my classes :

class User < ActiveRecord::Base
  has_one :address, dependent: :destroyendclass Address < ActiveRecord::Base
  belongs_to :user
  validates :user, presence: true
  validate :user_association

  def user_association
    unless Address.where(user_id: user.id).count == 0
      errors.add(:user_id, 'Only one address per user')
    end
  endend


I'm creating my address from user model, like this :

def create_address_relation
    a = Address.create(address_type: @type.to_s, user_id: id)
    self.address = aend


However when I'm able to create two address objects for same user. (I'm 
using paranoia gem for soft deleting objects, not sure if that is relevant)

Any suggestion how to make validations work? except unique index on the db

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/f9593b29-3a3a-44e2-976c-3016c9d4fbea%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to