2010-08-12 55 views
5

我是一个Django业余爱好者,并且在django注册工作时遇到问题。我按照他们的website上的安装说明进行操作,但对于像我这样的人来说,这些说明对于我应该做的事情并不是100%清楚。这是我所做的:我无法安装django-socialregistration应用程序!

  1. 我使用pip安装了oauth2和python-openid软件包。然后,我将facebook.py文件从facebook-python-sdk包复制到我的主django应用程序目录中。 (当我写这个,我想知道这个文件是否应该被复制到社会化注册应用程序目录?它是否有所作为?)
  2. 我将socialregistration目录复制到我的django项目的目录中。
  3. 我将socialresgitration添加到了我的INSTALLED_APPS设置中。
  4. 要将socialregistration.urls添加到我的urls.py文件中,我添加了以下行(不确定这是否正确,因为说明没有提供详细信息):
    (r'^ social /',include( 'socialregistration.urls')),
  5. 我将facebook API密钥和密钥添加到我的设置
  6. 我将socialregistration.auth.FacebookAuth添加到了AUTHENTICATION_BACKENDS。
  7. 我将socialregistration.middleware.FacebookMiddleware添加到MIDDLEWARE_CLASSES。
  8. 最后,我添加了三个Facebook标签,他们给我的模板之一的说明。
  9. 当我然后加载我的网站,我得到的folllowing错误:
    抓到AttributeError的同时呈现:请添加django.core.context_processors.request上下文处理器的settings.TEMPLATE_CONTEXT_PROCESSORS设置

所以,我该怎么办?我认为安装很简单,但显然情况并非如此。任何帮助,将不胜感激!

哦,顺便说一句,我正在使用Django 1.2.1和Python 2.6。

谢谢!

+0

“2.我复制了socialregistration目录到我的Django项目的目录。”我不认为这是必要的。安装文件夹应该包含在您的PYTHON_PATH中,但不能复制到您的项目中。 – Dolph 2011-02-11 02:37:35

回答

3

Please add the django.core.context_processors.request context processors to your settings.

你有没有做到这一点?您需要将TEMPLATE_CONTEXT_PROCESSORS更改为包含django.core.context_processors.request

+0

我试过了,但同样的错误依然存在。我挖入社交注册应用程序的源代码,这是导致错误的部分: 如果不是上下文中的'请求': raise AttributeError,'请添加''django.core.context_processors.request' '上下文处理器到您的settings.TEMPLATE_CONTEXT_PROCESSORS设置'。 我添加了上下文处理器到我的主要设置。py文件。我认为这是做到这一点的方法?不知道这可能是什么其他... :( – Helmut 2010-08-12 10:58:29

+0

@Helmut - 发布全'TEMPLATE_CONTEXT_PROCESSORS'设置 – 2010-08-12 12:06:59

+0

TEMPLATE_CONTEXT_PROCESSORS =( “django.contrib.auth.context_processors.auth”, “django.core.context_processors.debug ”, “django.core.context_processors.i18n”, “django.core.context_processors.media”, “django.contrib.messages.context_processors.messages”, “django.core.context_processors.request”, ) – Helmut 2010-08-12 15:46:49

相关问题