Ich habe eine URL Django für Benutzer ihr Passwort zu ändern, die wie folgt aussieht:Wie DRY in Django bleiben
url(r'^change-password$', views.user_change_password, name='change_password'),
url(r'^change-password/done/$', views.user_changed_password, name='password_changed')
Wo views.user_change_password
ist:
def user_change_password(request):
response = password_change(request,
template_name=r"Foo/Account/change_password.html",
post_change_redirect=reverse('Foo:password_changed'))
return response
Dies funktioniert, aber es scheint, für mich, dass die Angabe des Lookup-Namen password_changed
an zwei verschiedenen Orten das Prinzip der DRY verletzt.
Gibt es einen Standard Weg in Django damit umzugehen?
Das sieht mir sehr nach 'def myfunc (...)' und 'x = myfunc()' aus, dh: Sie definieren etwas und benutzen es dann. Ich bin nicht sicher, wie viel DRYer es bekommen kann ... –
Ich könnte es DRYer machen, indem ich es als Konstante irgendwo anders definiere, und dann das an beiden Orten benutze. Ich bin neu in Django, also habe ich mich gefragt, ob es einen Standardweg gibt. – Batman
@Batman, so 'foo = 'foo'; bar = foo' ist nicht DRY, aber irgendwie 'baz = 'foo'; foo = baz; bar = baz' ist? – Chris