Django OAuth für Github – Datta Able (kostenloses Produkt)

Hallo Programmierer!

Dieser Artikel erwähnt die neuesten hinzugefügten Funktionen Datta fähig, ein Open-Source-Seed-Projekt, das von Django betrieben wird. Das Projekt wurde aktualisiert, um eine OAuth-Anmeldung mit Github, einen dauerhaften Dunkelmodus (UI-Verbesserung) und eine schnellere Ausführung in Docker bereitzustellen. Für Neueinsteiger, Django ist ein leistungsstarkes Backend-Framework, mit dem im Handumdrehen sichere und leistungsstarke Full-Stack-Apps codiert werden können. Danke fürs Lesen!

Das Hinzufügen der OAuth-Anmeldung zu einer vorhandenen Web-App verbessert die Sicherheit und beschleunigt möglicherweise den Registrierungsprozess.

Die neuesten Entwicklungen werden in diesem kurzen Video, das auf Youtube veröffentlicht wurde, visuell präsentiert.

VIDEO-LINK – Django Github SignIN – Datta-fähig (kostenloses Produkt)


✨ So verwenden Sie das Produkt

Als Open-Source-Starter ist der schnellste Weg, den Code zu verwenden oder damit zu spielen, der Zugriff auf die öffentliches Repositorium (verfügbar auf GitHub) oder verwenden Sie das GIT-Befehlszeilentool, um die Quellen zu klonen. Sobald die Quellen heruntergeladen sind, kann Django Datta Able über Docker (mit einer einzigen Zeile) oder mit dem klassischen manuellen Build gestartet werden.

Diesmal wird das Docker-Setup verwendet, wie es im Projekt vorgestellt wird Liesmich.

👉 Schritt 1 – Laden Sie den Code aus dem GH-Repository herunter (mit GIT)

$ git clone 
$ cd django-datta-able

👉 Schritt 2 – Starten Sie die APP in Docker

$ docker-compose up --build 

Sobald der obige Befehl abgeschlossen ist, sollten wir im Browser auf die App zugreifen können:

Django OAuth über GitHub - Widgets-Seite (kostenlose Vorlage)


✨ OAuth für GitHub

Diese Funktion wird auf der Anmeldeseite automatisch aktiviert, wenn die Github-Geheimnisse (GITHUB_ID, GITHUB_SECRET) sind in der bereitgestellt .env Datei. Wenn die Geheimnisse gültig sind, zeigt die Anmeldeseite ein GitHub-Symbol auf der Anmeldekarte an, um Benutzer darüber zu informieren, dass diese Anmeldeoption verfügbar ist.

# Sample '.env' file (truncated content)

# True for development, False for production
DEBUG=True

...

# If present, the SignIN exposes the Github Login Button
GITHUB_ID= SOME_GH_ID_HERE
GITHUB_SECRET= SOME_GH_SECRET_HERE

Der Effekt in der Benutzeroberfläche ist unten hervorgehoben:

Django OAuth über GitHub – Option aktivieren.


✨ So fügen Sie OAuth zu einem Django-Projekt hinzu

Falls jemand diese Funktion nützlich findet und eine vorhandene App aktualisieren möchte, sind hier die Schritte:

👉 Schritt Nr. 1 – Aktualisieren Sie die einzuschließenden Abhängigkeiten Django-AllAuth

$ pip install django-allauth

Aus Gründen der Persistenz sollte das Modul auch in der enthalten sein requirements.txt Datei.

👉 Schritt #2 – Projekt aktualisieren die Einstellungen um allauth-Module einzuschließen



INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles', 
    'allauth',                                 
    'allauth.account',                         
    'allauth.socialaccount',                   
    'allauth.socialaccount.providers.github',  
    'allauth.socialaccount.providers.twitter'  
]

👉 Schritt #3 – Verwandt hinzugefügt die Einstellungen (unten in der Datei)



AUTHENTICATION_BACKENDS = (
    "allauth.account.auth_backends.AuthenticationBackend",
)

SITE_ID = 1 

All diese Einstellungen werden von der benötigt AllAuth library.

👉 Schritt #4 – Routing einschließen von AppAuth

Für Django Datta Able wurde dieses Update im gemacht authentication/urls.py :



urlpatterns = [
    path('login/', login_view, name="login"),
    path('register/', register_user, name="register"),
    path("logout/", LogoutView.as_view(), name="logout"),
    path('social_login/', include('allauth.urls')),       
]

👉 Schritt #5 – Aktualisieren Sie die App-Einstellungen, um Github-Geheimnisse zu lesen .env



GITHUB_ID     = os.getenv('GITHUB_ID', None)
GITHUB_SECRET = os.getenv('GITHUB_SECRET', None)
GITHUB_AUTH   = GITHUB_SECRET is not None and GITHUB_ID is not None

👉 Schritt #6 – Aktualisieren Sie die Anmeldeseite

{% if GITHUB_AUTH %}
<div class="mx-2">
  <form method="post" action="/social_login/github/login/?next=%2F">
    {% csrf_token %}
    <button class="btn btn-light" type="submit" >
      <i class="feather icon-github auth-icon"></i></button>
  </form>
  <span class="mx-1">Sign IN with GitHub</span>
</div>                   
{% endif %}  

An dieser Stelle besteht der letzte Schritt darin, die Datenbank zu migrieren und den OAuth-Fluss zu testen (registration, logout).


Danke fürs Lesen! Weitere Ressourcen und Unterstützung finden Sie unter:

Datta Able Django – Kostenloser Starter, bereitgestellt von AppSeed.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *