Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8484707
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 10, 20262026-06-10T20:27:11+00:00 2026-06-10T20:27:11+00:00

I have a model with a foreign key. Even though there’s a database constraint

  • 0

I have a model with a foreign key. Even though there’s a database constraint preventing a duplicate user_id from entering SomeClass‘s table, I’m repeating (pre-empting, really) that validation in the model so that it’s handled more gracefully. So my model looks something like this:

class SomeClass < ActiveRecord::Base
  belongs_to :user
  validates_presence_of :user
  validates_uniqueness_of :user_id
  ...
end

It took me a while to realize this is how it needs to be done. It seems to me that ActiveRecord should expect you to use either user or user_id consistently on both presence and uniqueness validation. That would make:

validates :user, :presence => true, :uniqueness => true

or:

validates :user_id, :presence => true, :uniqueness => true

possible, which is optimal for code maintainability since it groups all user constraints together. So why instead is it inconsistent?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-10T20:27:13+00:00Added an answer on June 10, 2026 at 8:27 pm

    I believe the reason lies in difference between user_id and user.

    Presence of user makes sure not only existence of user_id, but also presence of the actual user.

    As checking uniqueness of user_id and user, AFAIK they may have the same effect, checking of user_id is enough it make sure it is unique.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have separate apps with a foreign key from a model in one model
I have a Model with a Foreign Key of Parent class Item(models.Model): parent =
I have a model that contains a foreign key value, then in the form
In the example below, I have a model Proof which contains a foreign key
I have a Django model which has a foreign key that is optional. I
I have 3 models linked with a foreign key: class Region(models.Model): name = models.CharField(max_length=20)
How can I get the foreign key values? I have a common vehicle model
I have an Action model that has a foreign key which specifies how often
I've got a question model and mcq choices model which have foreign key to
I have an Article model that has a foreign key relationship with Author that

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.