Sunday, October 26, 2014

AUTH_USER_MODEL does not accept sub application

I am having problems with my custom user model while using Django 1.7.1 and Python 3.4.
I have declared a Custom user model in an apps.users.AuthUser. I then have another application (apps.pets) that will use the AuthUser as a ForeignKey in a Pet model. See below:

class Pet(models.Model):
    owner = models.ForeignKey(settings.AUTH_USER_MODEL, db_index=True, blank=False, null=False)

This is my scenario:

In my INSTALLED_APPS I have: "apps.users"

If I set AUTH_USER_MODEL="apps.users.AuthUser" the exception is raised when I run 'runserver':
  File "/home/frank/.virtualenvs/myproj/lib/python3.4/site-packages/django/contrib/auth/checks.py", line 12, in check_user_model
    cls = apps.get_model(settings.AUTH_USER_MODEL)
  File "/home/frank/.virtualenvs/myproj/lib/python3.4/site-packages/django/apps/registry.py", line 201, in get_model
    app_label, model_name = app_label.split('.')
ValueError: too many values to unpack (expected 2)


If I set AUTH_USER_MODEL="users.AuthUser" the exception is raised when I run migrate:
  File "/home/frank/.virtualenvs/myproj/lib/python3.4/site-packages/django/db/migrations/state.py", line 89, in render
    model=lookup_model,
ValueError: Lookup failed for model referenced by field pets.Pet.owner: users.AuthUser

Similar issue reported here I guess: https://code.djangoproject.com/ticket/19845


Does this mean that in AUTH_USR_MODEL setting I have to use 'app_label.model_name' instead of 'apps.app_label.model_name.'? Is there a workaround for this?

--
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 http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAEAUGdWox3RoTRMvY2CxU94RCe3bRzUKPFKWx1ERderyVL9f8A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment