2017-07-27 2 views
0

C'est très étrange de se produire, est-ce que quelqu'un sait comment y remédier?Pourquoi python-social-auth supprime-t-il mes champs first_name et last_name chaque fois que je me connecte avec de la vapeur?

Tout cela parce que je veux éliminer la création d'utilisateurs et laisser les réseaux sociaux externes.

Je vais également implémenter Twitch.tv, bien que je ne l'ai pas testé s'il le supprime aussi.

Login (Template): Ici, je viens de mettre le bouton tel qu'il apparaît dans la documentation.

<a class="btn btn-steam" href="{% url "social:begin" "steam" %}" role="button"><i class="fa fa-steam" aria-hidden="true"></i> Login with Steam</a> 

Connexion views.py

class UserLogin(TemplateView): 
    success_url = 'timeline' 
    template_name = 'registration/login.html' 

Settings.py

import os 
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 
DEBUG = True 
ALLOWED_HOSTS = ['127.0.0.1','plxapp.herokuapp.com'] 
INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'easy_thumbnails', 
    'social_django', 
    'core.apps.CoreConfig', 
    'userprofile.apps.UserProfileConfig', 
    'posts.apps.PostsConfig', 
    'posts.templatetags.custom_filters', 
] 
MIDDLEWARE = [ 
    'django.middleware.security.SecurityMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware', 
] 
ROOT_URLCONF = 'plaxed.urls' 
TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [os.path.join(BASE_DIR, 'templates')], 
     'APP_DIRS': True, 
     'OPTIONS': { 
      'context_processors': [ 
       'django.template.context_processors.debug', 
       'django.template.context_processors.request', 
       'django.contrib.auth.context_processors.auth', 
       'django.contrib.messages.context_processors.messages', 
       'social_django.context_processors.backends', 
       'social_django.context_processors.login_redirect', 
      ], 
     }, 
    }, 
] 
WSGI_APPLICATION = 'plaxed.wsgi.application' 
DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.sqlite3', 
     'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 
    } 
} 
AUTH_PASSWORD_VALIDATORS = [ 
    { 
     'NAME':  'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 
    }, 
    { 
     'NAME':  'django.contrib.auth.password_validation.MinimumLengthValidator', 
    }, 
    { 
     'NAME':  'django.contrib.auth.password_validation.CommonPasswordValidator', 
    }, 
    { 
     'NAME':  'django.contrib.auth.password_validation.NumericPasswordValidator', 
    }, 
] 
LANGUAGE_CODE = 'en-us' 
TIME_ZONE = 'America/Bogota' 
USE_I18N = True 
USE_L10N = True 
USE_TZ = True 
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') 
STATIC_URL = '/static/' 
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),) 
MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 
MEDIA_URL = '/media/' 
LOGIN_REDIRECT_URL = 'timeline' 
import dj_database_url 
db_from_env = dj_database_url.config() 
DATABASES['default'].update(db_from_env) 
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage' 
THUMBNAIL_ALIASES = { 
    '': { 
     'post': {'size': (555, 0), 'crop': 'smart', 'upscale' : True}, 
     'header': {'size': (1170, 350), 'crop': 'smart', 'upscale' : True}, 
     'avatar': {'size': (200, 200), 'crop': 'smart', 'upscale' : True}, 
     'avatar_thumb': {'size': (50, 50), 'crop': 'smart', 'upscale' : True}, 
    }, 
} 
SOCIAL_AUTH_LOGIN_REDIRECT_URL = 'timeline' 
SOCIAL_AUTH_LOGIN_ERROR_URL = 'login' 
SOCIAL_AUTH_LOGIN_URL = 'index' 
SOCIAL_AUTH_NEW_USER_REDIRECT_URL = 'userprofile_basic' 
SOCIAL_AUTH_NEW_ASSOCIATION_REDIRECT_URL = 'timeline' 
SOCIAL_AUTH_DISCONNECT_REDIRECT_URL = 'login' 
SOCIAL_AUTH_INACTIVE_USER_URL = 'index' 
SOCIAL_AUTH_USER_MODEL = 'auth.User' 
AUTHENTICATION_BACKENDS = (
    'social_core.backends.open_id.OpenIdAuth', 
    'social_core.backends.steam.SteamOpenId', 
    'django.contrib.auth.backends.ModelBackend', 
) 
SOCIAL_AUTH_PIPELINE = (
    'social_core.pipeline.social_auth.social_details', 
    'social_core.pipeline.social_auth.social_uid', 
    'social_core.pipeline.social_auth.social_user', 
    'social_core.pipeline.user.get_username', 
    'social_core.pipeline.user.create_user', 
    'social_core.pipeline.social_auth.associate_user', 
    'social_core.pipeline.social_auth.load_extra_data', 
    'social_core.pipeline.user.user_details', 
    'social_core.pipeline.social_auth.associate_by_email', 
) 
SOCIAL_AUTH_ADMIN_USER_SEARCH_FIELDS = ['username', 'first_name', 'email'] 
SOCIAL_AUTH_STEAM_API_KEY = 'a key' 
SOCIAL_AUTH_STEAM_EXTRA_DATA = ['player'] 

Répondre

0

Son un bug Auth social Python, pas résolu je change pour django-allauth