我正在尝试检索Django中最受欢迎的投票项目。这是相关的代码行:
originalList = [x[0] for x in list(Vote.objects.get_top(Item, endIdx))[startIdx:]]
索引用于分页目的。当我尝试在浏览器中加载页面时,我得到:
AttributeError at /items/top/
'Settings' object has no attribute 'DATABASE_ENGINE'
但是,它应该寻找的属性不是DATABASE_ENGINE,而是在DATABASES['default']['ENGINE']
。怎么解决这个问题?
答案 0 :(得分:1)
是的,看起来4 years中没有触及该代码。它声称
Note that this application requires Python 2.3 or later, and Django
0.97-pre or later. You can obtain Python from http://www.python.org/ and
Django from http://www.djangoproject.com/.
当时,这很可能是定义数据库引擎的方式,现在已弃用。就个人而言,我会避免使用它,也可能还有其他问题......
答案 1 :(得分:0)
我已经完成了以下操作,我认为这是最简单的事情,直到django投票在上游修复:
在settings.py
的末尾,附加:
DATABASE_ENGINE = DATABASES['default']['ENGINE']
答案 2 :(得分:0)
看起来像是一个pre-django1.0应用程序,你应该检查github上的分支:https://github.com/brosner/django-voting/network并使用一个活动分叉或考虑使用替代应用程序。