Überholte Django-Allauth Login- / Registrierungs-URLs mit benutzerdefinierten URLs / Seiten

Ich habe Django-Allauth für die Anmeldung über Facebook, Twitter und Google konfiguriert.

Django-Allauth akzeptiert Anmeldeanfragen jedoch nur bei/accounts/login/, Anmeldeanfrage nur bei/accounts/signup/ etc. Ich habe ein modales Anmelde- und Registrierungsformular auf meiner Homepage und möchte nur dieses verwenden.

Wie verwende ich das Django-Allauth-System, um die Anmeldung (sozial und benutzerdefiniert) / Registrierung usw. über das modale Formular auf meiner Homepage zuzulassen? Ich suche nach einem Mechanismus, um die URLs von Django-Allauth zu überschreiben und durch meine Seiten / URLs zu ersetzen.

Der Code istHie

Das modale HTML-Formular lautetHie.

Diese Frage ähnelt vielleichtDie. Die Antwort in der Frage ist jedoch nicht zu verständlich.

Nach einigen Antworten habe ich folgende Änderungen vorgenommen:

#views.py
def logreg(request):
    context = {
        'login_form': MyLoginForm(), 
        'signup_form': MySignupForm()
    }
    return render(request, 'login.html', context)

#In URL Patterns of urls.py
url(r'^login/', logreg, name='login'),

In Index ( from where call to the modal is to be made):
<p>Welcome visitor <a href="#" data-modal-url="{% url 'login' %}">Login</a> or <a href="#">Register</a></p>

Alle diese Arbeit führte zu diesem Chaos:

    Internal Server Error: /login/
    Traceback (most recent call last):
...
    django.core.urlresolvers.NoReverseMatch: Reverse for 'ecomweb.home' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

During handling of the above exception, another exception occurred:

...
django.core.urlresolvers.NoReverseMatch: Reverse for 'home' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

Ich bin verrückt nach dem, was passiert.

Antworten auf die Frage(8)

Ihre Antwort auf die Frage