title: Django 2.x Primary-Key to UUID field
body: <p>I don't want my site to use integer id's as primary-key's because they are easy to determine by simyply doing i+1
  instead i want to use UUID fields for that. So i started to add an UUIDField as id field on all my models like this:</p>
  
  <pre><code>class User(AbstractBaseUser):
      id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
  ...
  </code></pre>
  
  <p>but since i did that i get errors like:</p>
  
  <blockquote>
    <p>Reverse for 'profile' with keyword arguments '{'pk':
    UUID('68065cdb-c611-4865-bffc-32e00421bef1')}' not found. 1 pattern(s)
    tried: ['user/(?P\d+)/profile$']</p>
  </blockquote>
  
  <p>my urls.py looks like:</p>
  
  <pre><code>url(r'^user/(?P&lt;pk&gt;\d+)/profile$', auth_required(app.view_profile_external), name='profile'),
  </code></pre>
  
  <p>template.html:</p>
  
  <pre><code>....
  &lt;div&gt;
     &lt;a href="{% url 'profile' pk=user.pk %}"&gt;My Profile&lt;/a&gt;
  &lt;/div&gt;
  ....
  </code></pre>
  
  <p>views.py</p>
  
  <pre><code>def view_profile_external(request, pk=None):
      if pk:
          user = get_user_model().objects.get(pk=pk)
      else:
          user = request.user
      args = {'external_user': user}
      return render(request, 'app/profile_as_external.html', args)
  </code></pre>
  
  <p>do i need to change something here also? I don't get it why the UUIDField is not resolveable the same way as the Integer field as pk or id provided by django as default.</p>