title: How correctly add permissions to User model of Django?
body: <p>I am tring to add custom permissions to <code>User</code> model (<code>django.contrib.auth.models</code>).</p>
  
  <p>To <code>__init__.py</code> file of my <code>users</code> app I add:</p>
  
  <pre><code>from django.db.models.signals import pre_migrate
  from django.contrib.contenttypes.models import ContentType
  from django.contrib.auth import models as auth_models
  from django.contrib.auth.models import Permission
  from django.conf import settings
  from django.dispatch import receiver
  
  
  @receiver(pre_migrate, sender=auth_models)
  def add_user_permissions(sender, **kwargs):
      content_type = ContentType.objects.get_for_model(settings.AUTH_USER_MODEL)
      Permission.objects.get_or_create(codename='view_user', name=' Can view users', content_type=content_type)
      Permission.objects.get_or_create(codename='change_user_password', name=' Can change user password', content_type=content_type)
  </code></pre>
  
  <p><strong>settings.py:</strong></p>
  
  <pre><code>INSTALLED_APPS = [
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.messages',
      'django.contrib.staticfiles',
      'django.forms',
      'django_select2',  # "django-select2" application
      'custom_app',  # "custom_app" application
      'custom_app_2',  # "custom_app_2" application
      'modeltranslation',  # "django-modeltranslation" application
      'users', # "users" application
  ]
  </code></pre>
  
  <p><strong>ERROR:</strong></p>
  
  <pre><code>Traceback (most recent call last):
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/utils/autoreload.py", line 228, in wrapper
      fn(*args, **kwargs)
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/core/management/commands/runserver.py", line 117, in inner_run
      autoreload.raise_last_exception()
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/utils/autoreload.py", line 251, in raise_last_exception
      six.reraise(*_exception)
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/utils/autoreload.py", line 228, in wrapper
      fn(*args, **kwargs)
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/__init__.py", line 27, in setup
      apps.populate(settings.INSTALLED_APPS)
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate
      app_config = AppConfig.create(entry)
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/apps/config.py", line 94, in create
      module = import_module(entry)
    File "/usr/local/Cellar/python/2.7.14/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
      __import__(name)
    File "/Applications/Projects/web/dashboard.kase.kz/users/__init__.py", line 5, in &lt;module&gt;
      from django.contrib.contenttypes.models import ContentType
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/contrib/contenttypes/models.py", line 139, in &lt;module&gt;
      class ContentType(models.Model):
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/db/models/base.py", line 110, in __new__
      app_config = apps.get_containing_app_config(module)
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/apps/registry.py", line 247, in get_containing_app_config
      self.check_apps_ready()
    File "/Users/nurzhan_nogerbek/Virtualenvs/py2714/lib/python2.7/site-packages/django/apps/registry.py", line 125, in check_apps_ready
      raise AppRegistryNotReady("Apps aren't loaded yet.")
  django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
  </code></pre>
  
  <p><strong>Question</strong>: How to fix this error?</p>