运行时错误:模型类没有声明明确的app_label,也不在Django OAuth工具包的已安装应用程序中

2024-04-26 04:48:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我想访问djangoauth工具箱使用的模型,这样我就可以定期从数据库中删除旧的令牌。我想我应该把它们导入:

from oauth2_provider.management.commands.cleartokens import Command
from oauth2_provider.models import AccessToken
Command.handle()

但是,当我尝试在命令行中运行此文件时,收到以下错误:

^{pr2}$

我也尝试将oauth2_provider.models.Application添加到我的设置文件中已安装的应用程序,但没有成功:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'api',
    'oauth2_provider',
    'oauth2_provider.models.Application',
    'rest_framework',
    'rest_framework.authtoken',
    'graphene_django',
    'corsheaders',
]

我还将app_label添加到它提到的Application类中,但这也不起作用。在


Tags: 文件djangofrom模型importrestapplicationmodels
2条回答

如果你看一下django-oauth2-provider docs(我假设这是正确的库;我不得不猜测,因为我没有在你的问题中找到链接),它会说:

Add OAuth2 Provider to INSTALLED_APPS

INSTALLED_APPS = (
    # ...
    'provider',
    'provider.oauth2',
)

但我注意到你在问题中的代码有其他东西:

'oauth2_provider',
'oauth2_provider.models.Application',

你试过医生建议的吗?这对你有用吗?在

如果你看django oauth2 toolkit docs,上面写着:

Add oauth2_provider to your INSTALLED_APPS

INSTALLED_APPS = (
    ...
    'oauth2_provider',
)

但我注意到你在问题中的代码有2个应用程序,而不是1个:

'oauth2_provider',
'oauth2_provider.models.Application',

你有没有试过删除那个应用程序oauth2_provider.models.Application?这对你有用吗?在

相关问题 更多 >