Thursday, August 30, 2018

Doubts on One-To-One Field

def userProfile(models.Model):
      user=models.OneToOneField(User,primary_key=True)
       """
       Other stuff
       """
I can query it like this 
x = userProfile.objects.get(user__id=1)(Assuming this exists)

when I do a connection.queries a single query is executed.When I try to access the username i.e x.user.username a new query is executed again when I see connection.queries? Is this the expected behavior. Wouldn't this be bad if we have huge databases? I have a scenario where some classes have common information and then they have different fields based on their classes. I have tested this OneToOneField by the above example and for some reason reluctant to use this because of the new query? The other approach would be abstract base classes where information stored in the db would be duplicated but the additional query can be saved I think any thoughts?

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/afb76a5c-30c7-45f0-8f8a-96e1d30e731c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment