content: cbv-passwordchangedoneview
This data as json
author | category | content | published_date | slug | summary | title | url |
---|---|---|---|---|---|---|---|
ryan | technology | From [Classy Class Based Views](http://ccbv.co.uk/projects/Django/2.2/django.contrib.auth.views/PasswordChangeDoneView/) `PasswordChangeDoneView` > > Render a template. Pass keyword arguments from the URLconf to the context. ## Attributes * template_name: Much like the `LogoutView` the default view is the Django skin. Create your own `password_change_done.html` file to keep the user experience consistent across the site. * title: the default uses the function `gettext_lazy()` and passes the string ‘Password change successful’. The function `gettext_lazy()` will translate the text into the local language if a translation is available. I’d just keep the default on this. ## Example views.py class myPasswordChangeDoneView(PasswordChangeDoneView): pass urls.py path('password_change_done_view/', views.myPasswordChangeDoneView.as_view(), name='password_change_done_view'), password_change_done.html {% extends "base.html" %} {% load i18n %} {% block content %} <h1> {% block title %} {{ title }} {% endblock %} </h1> <p>{% trans "Password changed" %}</p> {% endblock %} settings.py LOGIN_URL = '/<app_name>/login_view/' The above assumes that have this set up in your `urls.py` ## Special Notes You need to set the `URL_LOGIN` value in your `settings.py`. It defaults to `/accounts/login/`. If that path isn’t valid you’ll get a 404 error. ## Diagram A visual representation of how `PasswordChangeDoneView` is derived can be seen here:  ## Conclusion Again, not much to do here. Let Django do all of the heavy lifting, but be mindful of the needed work in `settings.py` and the new template you’ll need/want to create | 2019-12-25 | cbv-passwordchangedoneview | From [Classy Class Based Views](http://ccbv.co.uk/projects/Django/2.2/django.contrib.auth.views/PasswordChangeDoneView/) `PasswordChangeDoneView` > > Render a template. Pass keyword arguments from the URLconf to the context. ## Attributes * template_name: Much like the `LogoutView` the default view is the Django skin. Create your own `password_change_done.html` file to keep the user experience consistent across the site. * title: the default uses … | CBV - PasswordChangeDoneView | https://www.ryancheley.com/2019/12/25/cbv-passwordchangedoneview/ |