2017-03-18 3 views
0

Ich benutze derzeit Python Social Auth, um Benutzer in meine Django-App einzuloggen und ein Tutorial bei der ersten Benutzererstellung anzuzeigen. Ich habe das bisher versucht, aber die Anfrage funktioniert nicht in pre_save Signalen. Gibt es einen anderen Weg, dies zu tun?Tutorial bei der ersten Anmeldung erstellen

EDIT: Ich habe den folgenden Code in meinen Ansichten versucht, aber einmal einloggen, die print-Anweisung nie im Terminal eingeloggt.

def after_user_created(request, user, **kwargs): 
    user, created = User.objects.get_or_create(user=user) 
    if created: 
     request.session['first_login'] = True 
     print('FIRST LOGIN') 

Antwort

1

Sie können es nicht tun. Du solltest es nicht tun, selbst wenn du es tun könntest. Lassen Sie uns die Operation auf "Anfrage" so viel wie möglich auf "Ansicht" tun. so was.

def create_view(request): 
    user, created = User.objects.get_or_create(id=xxx) 
    if created: 
     request.session['first_login'] = True 

UPDATE

eine Lösung hinzufügen, die "social-app-django" geht davon verwendet wird.

① eingestellt settings.SOCIAL_AUTH_NEW_USER_REDIRECT_URL

NEW_USER_REDIRECT_URL=/new/user/view 

http://python-social-auth.readthedocs.io/en/latest/configuration/settings.html?highlight=NEW_USER_REDIRECT_URL#urls-options

② Update-Sitzung mit neuer Benutzeransicht.

def new_user_view(request): 
    request.session['first_login'] = True 
+0

über die Änderungen prüfen. Ich habe das versucht, aber aus irgendeinem Grund ging die Anfrage nicht durch, da die Druckanweisung niemals im Terminal erschien. – Viji123

+0

@ Viji123 Ist das die Bibliothek, die Sie verwenden? https://github.com/python-social-auth/social-core –

+0

Nein, ich verwende https://github.com/python-social-auth/social-app-django – Viji123

Verwandte Themen