Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 试图通过Django rest框架jwt实现Django身份验证。为什么我会得到;ValueError:模块名称为空";?_Python_Django_Rest_Django Rest Framework - Fatal编程技术网

Python 试图通过Django rest框架jwt实现Django身份验证。为什么我会得到;ValueError:模块名称为空";?

Python 试图通过Django rest框架jwt实现Django身份验证。为什么我会得到;ValueError:模块名称为空";?,python,django,rest,django-rest-framework,Python,Django,Rest,Django Rest Framework,我有一个现有的、正在运行的Django应用程序,它实现了许多Django REST框架API。 现在,我尝试添加用户身份验证API,如中所述。但它不起作用 首先,我使用pip安装了Django rest框架JWT。没问题 然后,我将以下块添加到我的settings.py中的REST\u框架变量中: 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework.authentication.SessionAuthentication', '

我有一个现有的、正在运行的Django应用程序,它实现了许多Django REST框架API。 现在,我尝试添加用户身份验证API,如中所述。但它不起作用

首先,我使用
pip
安装了Django rest框架JWT。没问题

然后,我将以下块添加到我的
settings.py中的
REST\u框架
变量中:

'DEFAULT_AUTHENTICATION_CLASSES': (
    'rest_framework.authentication.SessionAuthentication',
    'rest_framework.authentication.BasicAuthentication',
    'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
),
url(r'^api-token-auth/', 'rest_framework_jwt.views.obtain_jwt_token'),
最后,我在我的应用程序目录中的
url.py
中添加了以下行(即:不是全局
url.py
):

然后,当我启动服务器时,出现了以下错误:
ValueError:Empty module name
。为什么我会出现这个错误?我如何修复它

Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/core/management/__init__.py", line 399, in execute_from_command_line
    utility.execute()
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/core/management/__init__.py", line 392, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/core/management/__init__.py", line 272, in fetch_command
    klass = load_command_class(app_name, subcommand)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/core/management/__init__.py", line 75, in load_command_class
    module = import_module('%s.management.commands.%s' % (app_name, name))
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/utils/importlib.py", line 40, in import_module
    __import__(name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/south/management/commands/__init__.py", line 10, in <module>
    import django.template.loaders.app_directories
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/template/loaders/app_directories.py", line 23, in <module>
    mod = import_module(app)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/utils/importlib.py", line 40, in import_module
    __import__(name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/__init__.py", line 2, in <module>
    from authority.sites import site, get_check, get_choices_for, register, unregister
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/sites.py", line 7, in <module>
    from authority.permissions import BasePermission
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/permissions.py", line 9, in <module>
    from authority.models import Permission
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/models.py", line 10, in <module>
    from authority.utils import User
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/utils.py", line 11, in <module>
    User = get_user_class()
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/utils.py", line 6, in get_user_class
    return auth.get_user_model()
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/contrib/auth/__init__.py", line 127, in get_user_model
    user_model = get_model(app_label, model_name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/db/models/loading.py", line 271, in get_model
    self._populate()
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/db/models/loading.py", line 75, in _populate
    self.load_app(app_name, True)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/db/models/loading.py", line 99, in load_app
    models = import_module('%s.models' % app_name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/utils/importlib.py", line 40, in import_module
    __import__(name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/registration/models.py", line 15, in <module>
    User = get_user_model()
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/contrib/auth/__init__.py", line 127, in get_user_model
    user_model = get_model(app_label, model_name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/db/models/loading.py", line 271, in get_model
    self._populate()
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/db/models/loading.py", line 75, in _populate
    self.load_app(app_name, True)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/db/models/loading.py", line 97, in load_app
    app_module = import_module(app_name)
  File "/opt/virtualEnvs/myApp/lib/python2.7/site-packages/django/utils/importlib.py", line 40, in import_module
    __import__(name)
ValueError: Empty module name
回溯(最近一次呼叫最后一次):
文件“/manage.py”,第10行,在
从命令行(sys.argv)执行命令
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/core/management/_init__.py”,第399行,从命令行执行
utility.execute()
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/core/management/_init__.py”,第392行,在execute中
self.fetch_命令(子命令)。从_argv(self.argv)运行_
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/core/management/_init__.py”,第272行,在fetch_命令中
klass=加载命令类(应用程序名称,子命令)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/core/management/_init__.py”,第75行,装入命令类
模块=导入模块(“%s.management.commands.%s%”(应用程序名称,名称))
导入模块中的文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/utils/importlib.py”,第40行
__导入(名称)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/south/management/commands/_init__.py”,第10行,在
导入django.template.loaders.app_目录
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/template/loaders/app_directories.py”,第23行,在
mod=导入模块(应用程序)
导入模块中的文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/utils/importlib.py”,第40行
__导入(名称)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site-packages/authority/__-init___.py”,第2行,在
从authority.sites导入站点,获取检查,获取选择,注册,注销
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/authority/sites.py”,第7行,在
从authority.permissions导入BasePermission
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/authority/permissions.py”,第9行,在
从authority.models导入权限
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/authority/models.py”,第10行,在
从authority.utils导入用户
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/authority/utils.py”,第11行,在
User=get\u User\u class()
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/authority/utils.py”,第6行,在get\u user\u类中
返回auth.get\u user\u model()
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/contrib/auth/__init__;.py”,第127行,在get_user_模型中
用户\模型=获取\模型(应用\标签、模型\名称)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/db/models/loading.py”,第271行,在get_模型中
自我.()
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/db/models/loading.py”,第75行,在
self.load\u应用程序(应用程序名称,True)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/db/models/loading.py”,第99行,在load_应用程序中
模型=导入模块(“%s.models”%app\u name)
导入模块中的文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/utils/importlib.py”,第40行
__导入(名称)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/registration/models.py”,第15行,在
User=get\u User\u model()
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/contrib/auth/__init__;.py”,第127行,在get_user_模型中
用户\模型=获取\模型(应用\标签、模型\名称)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/db/models/loading.py”,第271行,在get_模型中
自我.()
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/db/models/loading.py”,第75行,在
self.load\u应用程序(应用程序名称,True)
文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/db/models/loading.py”,第97行,在load_应用程序中
应用程序模块=导入应用程序模块(应用程序名称)
导入模块中的文件“/opt/virtualEnvs/myApp/lib/python2.7/site packages/django/utils/importlib.py”,第40行
__导入(名称)
ValueError:模块名称为空

您使用的是什么版本的Django?似乎支持的最低版本是
1.4
Django version=1.6.5在您的virtualenv中,您可以从
pip列表
提供信息吗?以下是
pip列表
的输出:首先,此值错误通常来自
settings.py
中的键入错误,但此堆栈跟踪在Django中最接近数据库模型代码的位置终止。尝试执行
/manage.py syncdb
,看看问题是否仍然存在?