title: Django all-auth app, how to modify /account/profile page to display custom view
body: <p>After setting up the All-Auth app, when user logs in, he gets redirected to: <code>accounts/profile/</code> page which tells us that the view doesn't exist. </p>
  
  <p>I'm trying to figure out what kind of thing to include there, and decided to allow the user to change their basic information.</p>
  
  <p>I have a <code>users</code> app with a <code>Teacher</code> model, which is set up as follows:</p>
  
  <pre><code>class Teacher(models.Model):
      user = models.ForeignKey(User, unique=True)
      rate = models.CharField(max_length=200)
      availability = models.BooleanField(default=False)
      verified = models.BooleanField(default=False)
  </code></pre>
  
  <p>I want the <code>accounts/profile/</code> page to show a form, containing this information. The user can edit these fields and also edit their Firstname, Lastname and Email, which belong to a different Model - <code>User</code>.</p>
  
  <p>I can't seem to get started on this. When I created a detailed view for the profile page, I get an error saying: </p>
  
  <blockquote>
    <p>No PK or SLUG provided</p>
  </blockquote>
  
  <p>I want Django to change the current users info, not based on the primary key in the URL. Do I need a custom view? I've looked at [other solutions<a href="https://stackoverflow.com/questions/33724344/how-can-i-display-a-user-profile-using-django">1</a>
  but they seem to be utilising the private key parameter. </p>
  
  <p>What I need is a working view function, something similar to (<strong>not working</strong>):</p>
  
  <pre><code>def get_teacher_info(request):
      current_user = request.user
      teacher = get_object_or_404(Teacher, username=current_user.username)
      return render(request, 'account/profile.html', {
              'user':current_user,
              'teacher': teacher,
              'error_message': "The field is blank",
          })
  </code></pre>
  
  <p>and in the <code>accounts/urls.py</code> I've added:</p>
  
  <pre><code>url(r"^profile/$", views.get_teacher_info, name="account_profile"),
  </code></pre>
  
  <p>but when I make calls like <code>{% teacher.rate %}</code> in the html template, I get:
  Invalid block tag on line 5: 'teacher.rate'. Did you forget to register or load this tag?</p>