我./manage.py runserver
将Django从1.7升级到1.8后运行时出现以下警告两次.
.../django/contrib/sites/models.py:78: RemovedInDjango19Warning: Model class django.contrib.sites.models.Site doesn't declare an explicit app_label and either isn't in an application in INSTALLED_APPS or else was imported before its application was loaded. This will no longer be supported in Django 1.9.
该项目仍然运行良好,但我想摆脱警告.我没有在我的项目中使用Sites框架,但是当我添加'django.contrib.sites'
到INSTALLED_APPS
项目列表中时警告消失了settings.py
.所以这照顾了警告,我很高兴.
但随后项目开始在登录提示符下要求数据库中的站点.现在,整个事情是我根本不需要Sites框架.但现在我似乎被迫管理一个数据库条目,需要在安装过程中考虑它,当我只是试图摆脱警告时.
似乎登录代码django.contrib.auth
依赖于代码.但是,在Django的文档中,我发现了这个断言:"site_name:site.name的别名.如果你没有安装站点框架,这将被设置为request.META ['SERVER_NAME']的值.更多信息在网站上,请参阅"网站"框架."
所以看起来作者django.contrib.auth
认为Sites框架是可选的,但从我的情况来看,事实并非如此.
因此我的问题.是否有可能使用Django(可能是贡献的)身份验证系统而根本不使用Sites框架并且仍然摆脱该警告以及与Sites框架相关的所有内容?