[PYTHON] [Bachstelze] Fügen Sie dem Bachstelzenprojekt eine Anmeldeseite hinzu

Einführung

Es ist eine Ausgabe dessen, was ein Webentwicklungs-Anfänger gelernt hat. Ich studiere Webentwicklung mit Django ...

Was ist Bachstelze?

Was Bachstelze überhaupt ist, ist das Content Management System (CMS), das auf ** Django ** basiert. Grob gesagt können Sie problemlos Verwaltungsseiten wie Blogs erstellen.

Versuchen

Wir werden sofort die Schritte vom Erstellen eines Projekts bis zum Erstellen einer Anmeldeseite ausführen.

Starten Sie das Bachstelzenprojekt

Wir gehen davon aus, dass Pipenv und Virtualenv verwendet werden.

pip install wagtail
wagtail start mysite
cd mysite
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

Sie sollten nun in der Lage sein, Ihr Bachstelzenprojekt zu erstellen und auf die erste Seite unten zuzugreifen.

wagtail.jpeg

Fügen Sie eine Anmeldeseite hinzu

Installieren Sie zuerst django-allauth und aktivieren Sie Allauth in base.py im Verzeichnis mysite / settings.

pip install django-allauth

base.py


'django.template.context_processors.request', #hinzufügen

TEMPLATES = [
    {
        # ...,
        'OPTIONS': {
            'context_processors': [
                # ...
                'django.template.context_processors.request', #Wenn nicht, fügen Sie hinzu
                # ...
            ],
        },
    },
]

INSTALLED_APPS = (
    # ... other apps 
    #Wenn nicht, fügen Sie Folgendes hinzu
    'django.contrib.auth', 
    'django.contrib.messages',
    'django.contrib.sites',

    'allauth',
    'allauth.account',
    'allauth.socialaccount',
    # ...
)

AUTHENTICATION_BACKENDS = ( 
   'django.contrib.auth.backends.ModelBackend',
   'allauth.account.auth_backends.AuthenticationBackend',
) #hinzufügen

#Fügen Sie Folgendes hinzu
LOGIN_URL = '/login/'
LOGIN_REDIRECT_URL = '/'
ACCOUNT_AUTHENTICATION_METHOD = "username_email"
ACCOUNT_CONFIRM_EMAIL_ON_GET = True
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_EMAIL_VERIFICATION = "mandatory"
ACCOUNT_LOGIN_ON_EMAIL_CONFIRMATION = True
ACCOUNT_LOGOUT_ON_GET = True
ACCOUNT_LOGIN_ON_PASSWORD_RESET = True
ACCOUNT_LOGOUT_REDIRECT_URL = '/login/'
ACCOUNT_PRESERVE_USERNAME_CASING = False
ACCOUNT_SESSION_REMEMBER = True
ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE = False
ACCOUNT_USERNAME_BLACKLIST = ["admin", "god"]
ACCOUNT_USERNAME_MIN_LENGTH = 2

Legen Sie als Nächstes das URL-Muster für die Anmeldeseite fest.

urls.py


urlpatterns = [
    # .. Existing urls
    #hinzufügen
    url(r'', include('allauth.urls')), 
    url(r'', include(wagtail_urls)),
]

Zum Schluss migrieren Sie und rufen Sie die Anmeldeseite von http: // localhost: 8000 / login / auf, und Sie sind fertig.

python manage.py migrate

Zusammenfassung

Ich habe den Ablauf des Erstellens einer Anmeldeseite mit django-allauth bestätigt. Die Anmeldeseite selbst kann sofort durch Spielen mit "base.py" und "urls.py" aufgerufen werden, sodass Sie mit der effizienten Anwendungsentwicklung fortfahren können!

Referenz

LEARN WAGTAIL -HOW TO INSTALL WAGTAIL WITH DOCKER https://learnwagtail.com/tutorials/how-install-wagtail-docker/

-ADDING USER REGISTRATION/LOGIN TO YOUR WAGTAIL WEBSITE https://learnwagtail.com/tutorials/adding-user-authentication-registration-and-login-your-wagtail-website/

Recommended Posts

[Bachstelze] Fügen Sie dem Bachstelzenprojekt eine Anmeldeseite hinzu
[Django] So leiten Sie nicht angemeldete Benutzer zur Anmeldeseite um
Fügen Sie MeCab ein Wörterbuch hinzu
Die übliche Art, einen Kernel mit Jupyter Notebook hinzuzufügen
Schritte zum Erstellen eines Django-Projekts
[Selen] Verwenden Sie die while-Anweisung, um wiederholt zur "nächsten Seite" zu wechseln.
Fügen Sie Ihrem Computer eine GPIO-Karte hinzu. (1)
So fügen Sie ein Paket mit PyCharm hinzu
Geben Sie der Registerkarte ipywidgets einen Titel
Fügen Sie in Jupyter IPerl zum Kernel hinzu.
[NNabla] Hinzufügen einer Quantisierungsschicht zur mittleren Schicht eines trainierten Modells
So testen Sie auf einer von Django authentifizierten Seite
Fügen Sie mithilfe des Keras-Backends eine Ebene hinzu
Fügen Sie VSCode eine virtuelle Python-Umgebung hinzu
SSH-Anmeldung am Zielserver von Windows mit einem Klick auf eine Verknüpfung
Ich möchte dem Anfang einer WAV-Datei 1 Sekunde lang Stille hinzufügen
[Selen] Gehen Sie zur nächsten Seite, ohne auf Weiter zu klicken
Fügen Sie einen Befehl hinzu, um ähnliche Dateien zusammen zu markieren
Fügen Sie Windows zum Startmenü des Linux-Betriebssystems hinzu
So fügen Sie einen Suchpfad für Python-Module hinzu
So fügen Sie Python ein Modul hinzu, das Sie in Julialang eingefügt haben
Speichern Sie das Objekt in einer Datei mit pickle
Python Amateur versucht die Liste zusammenzufassen ②
Erstellen Sie einen Befehl, um das Arbeitsprotokoll abzurufen
[Python] Wirf eine Nachricht an den Slack-Kanal
Fordern Sie auf, jedem Login einen anderen Namen zu geben
[NNabla] So fügen Sie eine neue Ebene zwischen den mittleren Ebenen eines vorgefertigten Netzwerks hinzu
Fügen Sie eine Funktion hinzu, um dem Wetter heute mitzuteilen, dass der Bot locker ist (hergestellt von Python).
Erstellen Sie eine Funktion zur Visualisierung / Auswertung des Clustering-Ergebnisses
So schreiben Sie eine GUI mit dem Befehl maya
Eine grobe Einführung in die neuronale maschinelle Übersetzungsbibliothek
Ein Memo zum visuellen Verstehen der Achse von Pandas.Panel
Fügen Sie einfach den Treiber mit dem Mixer zum Formschlüssel hinzu
Zeigen Sie einen Bildschirm an, für den Sie sich bei Digital Signage anmelden müssen
Schritte zur Berechnung der Wahrscheinlichkeit einer Normalverteilung
So fügen Sie einer PDF-Datei Seitenzahlen hinzu (in Python)
Übergang zum Update-Bildschirm mit dem Django-Tag
Ich habe einen Befehl zum Markieren des Tabellenclips gegeben
[Morphologische Analyse] So fügen Sie Mecab ein neues Wörterbuch hinzu
Aufgaben zu Beginn eines neuen Python-Projekts
Versuchen Sie, die in Firefox gespeicherten Anmeldedaten zu entschlüsseln
Für mich als Django-Anfänger (1) -Erstellen eines Projekts / einer App-
So veröffentlichen Sie ein Ticket über die Shogun-API
So verweisen Sie auf statische Dateien in einem Django-Projekt
Fügen wir es der Umgebungsvariablen mit dem Befehl ~ hinzu
Generieren Sie ein Bash-Skript, um die Einstellungen des Datadog-Monitors hinzuzufügen
Python Hinweis: Das Rätsel, einer Variablen eine Variable zuzuweisen
Stellen Sie die Verwaltungsseite für die Produktion bereit, um die Wartung zu vereinfachen.
[* Es wird CentOS 6.10 sein] Was tun, wenn Sie das IUS Community Project-Repository in CentOS 6.5 (VirtualBox) nicht hinzufügen können?
Python-Skript, das von der Google-Suche zum sofortigen Speichern der Suchergebnisseite führt