title: django auth: password change template customization
body: <p>I want to theme django auth's password change templates to my site.  The problem is that django is seeing the <code>django/contrib/admin/templates/registration/</code> versions of the templates instead of my beautifully crafted <code>myapp/template/registration/password*.html</code>.</p>
  
  <p><a href="https://stackoverflow.com/questions/21048268/django-1-6-templates-for-password-change-reset">This</a> poster was told to fiddle with app order in settings.py, which is a bit fragile to my taste.  I think <a href="https://stackoverflow.com/questions/388800/how-do-i-use-the-built-in-password-reset-change-views-with-my-own-templates">this</a> poster may have gotten a reasonable answer, but if so, I haven't quite understood it yet.</p>
  
  <p>So what I did was to add a bunch of non-DRY cruft to my <code>urls.py</code> file, copied from <code>auth_urls.py</code>:</p>
  
  <pre><code># Provide explicit templates where I've provided them, shadowing the URL's
  # that registration.backends.defaults.urls will provide.
  url(r'^accounts/password/change/$',
      auth_views.password_change,
      {'post_change_redirect': reverse_lazy('auth_password_change_done'),
       'template_name': 'registration/password/change_form.html' },
      name='auth_password_change'),
  # ...
  url(r'^accounts/', include('registration.backends.default.urls')),
  </code></pre>
  
  <p>This works, but saddens me in its repetition.  Surely django encourages something cleaner.  Any pointers?</p>
  
  <p>(Fwiw, django 1.7 and python 3.4.2.)</p>