繁体   English   中英

启用django-social-auth后端后无法识别django管理员

[英]django admin not recognized after enabling django-social-auth backends

我已经在我的项目中使用django-social-auth使用Facebook登录,但是即使从Facebook注销,也无法登录django管理页面。

我以为我忘记了密码,并尝试从shell得到了更改:

>>> from django.contrib.auth.models import User
>>> User.objects.filter(is_superuser=True)
<QuerySet []>

这是我的setting.py文件:

# Application definition

INSTALLED_APPS = [
    'django.contrib.admin',
    'social.apps.django_app.default',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'portfolio',
    ]

AUTHENTICATION_BACKENDS = (
    # For Facebook Authentication
    'social.backends.facebook.FacebookOAuth2',
    # Default Django Auth Backends
    'django.contrib.auth.backends.ModelBackend',
    )


TEMPLATES = [
    {
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [],
    'APP_DIRS': True,
    'OPTIONS': {
        'context_processors': [
            'django.template.context_processors.debug',
            'django.template.context_processors.request',

             # Setting of Template Context Processors for Social Auth
            'social.apps.django_app.context_processors.backends',
            'social.apps.django_app.context_processors.login_redirect', 
            'django.contrib.auth.context_processors.auth',
            'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

models.py:

from django.db import models

class Personal(models.Model):
    name = models.CharField(max_length=100)
    address = models.CharField(max_length=100)
    email = models.EmailField()
    phone = models.CharField(max_length=100)
    status = models.CharField(max_length=100)
    cover = models.CharField(max_length=100)

我有一个form.py文件:

from django import forms
from django.forms import ModelForm
from . import models as m

class PersoForm(ModelForm):
    class Meta:
        model = m.Personal
        fields = ['name', 'status', 'address', 'email', 'phone', 'cover']

我知道我可以创建一个新的超级用户,但是我想了解为什么会这样,以及如何同时使用django-admin和django-social-auth?

我在这里感谢一些澄清,我是django框架的新手。

您是否运行了python manage.py createsuperuser 看来您根本没有超级用户。 您是如何登录admin

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM