Django 1.6 - admindocs和SITE_ID在视图部分生成错误

时间:2014-01-12 10:25:02

标签: django installation pip django-contrib

Django 1.6禁用了以前自动启用的sitesframework。这在管理员文档的视图部分引入了一个错误。

维护者已经修复并关闭它 https://code.djangoproject.com/ticket/21386

我有一个1.6的新pip安装,但错误仍然存​​在。我的猜测是,修补程序目前还没有内置到PIP上的最新稳定版本中吗?

我的问题是:您建议采用哪种方式将修复程序纳入我的运行设置? (如果可能的话,我想把它留在PIP而不是直接从Github检查django)

来自维护者的解决方案

如果有人偶然发现这个问题,请看官方机票上的bouke回复: https://code.djangoproject.com/ticket/21386#comment:8

在settings.py中设置SITE_ID = None可以解决错误。

1 个答案:

答案 0 :(得分:1)

这是fixed in the master branch,这是发布新的主要1.7版本的地方。这意味着该问题将在1.7中修复,但该版本尚未推出,并且不会在接下来的几个月内修复。

您可以尝试让Django团队(礼貌地!)将更改反向移植到stable/1.6.x分支,因为它不是新的未来,而只是解决1.6中的问题。这个分支的变化将包含在次要的1.6.2版本中。

  

我的问题是:你建议用什么方法来修复我的问题   运行设置? (如果可能的话,我想把它留在PIP而不是   直接从Github查看django)

只要包含更改的稳定版本没有出现,您就不会在Python包索引中找到包含此修复程序的版本(由pip使用)。

以下是一些选项:

  • 等到出现修复程序的新稳定版本。

  • 不推荐:您可以从master分支安装当前开发版本的Django。这可以解决您的特定问题,但是绝对疯狂并且很可能会引入各种其他问题。

  • 您可以从git获取1.6.1稳定版本,然后尝试从主分支手动cherry-pick the change。很可能这不会起作用,或者至少需要一些额外的手动更改,因为此更改最初并非用于1.6.x分支。

  • 如果您让团队将更改后退到1.6.x分支,您可以从此分支运行Django。我不会在生产中这样做,但它比从主人那里运行要安全得多。在新的小型1.6.x版本发布之前,这当然是一个临时解决方案。

  • 如果您让团队将更改后退到1.6.x分支,您可以从git获取1.6.1稳定版本,然后从cherry-pick the change手动获取1.6.x分支。