2010-06-09 63 views
0

我试图将facebook整合到我的应用程序中,以便用户可以使用他们的FB登录登录我的网站。我已经把一切都运行起来,当我使用命令行Django的facebook整合错误

python manage.py runserver 

运行我的网站,但相同的代码拒绝当我尝试运行,并通过Apache运行它没有任何问题。

我得到以下错误:

Environment: 

Request Method: GET 
Request URL: http://helvetica/foodfolio/login 
Django Version: 1.1.1 
Python Version: 2.6.4 
Installed Applications: 
['django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.sites', 
'foodfolio.app', 
'foodfolio.facebookconnect'] 
Installed Middleware: 
('django.contrib.sessions.middleware.SessionMiddleware', 
'facebook.djangofb.FacebookMiddleware', 
'django.middleware.common.CommonMiddleware', 
'django.contrib.auth.middleware.AuthenticationMiddleware', 
'facebookconnect.middleware.FacebookConnectMiddleware') 


Template error: 
In template /home/swat/website-apps/foodfolio/facebookconnect/templates/facebook/js.html, error at line 2 
    Caught an exception while rendering: No module named app.models 
    1 : <script type="text/javascript"> 
    2 :  FB_RequireFeatures(["XFBML"], function() {FB.Facebook.init("{{ facebook_api_key }}", " {% url facebook_xd_receiver %} ")}); 
    3 : 
    4 :  function facebookConnect(loginForm) { 
    5 :   FB.Connect.requireSession(); 
    6 :   FB.Facebook.get_sessionState().waitUntilReady(function(){loginForm.submit();}); 
    7 :  } 
    8 :  function pushToFacebookFeed(data){ 
    9 :   if(data['success']){ 
    10 :    var template_data = data['template_data']; 
    11 :    var template_bundle_id = data['template_bundle_id']; 
    12 :    feedTheFacebook(template_data,template_bundle_id,function(){}); 

Traceback: 
File "/usr/lib/pymodules/python2.6/django/core/handlers/base.py" in get_response 
    92.     response = callback(request, *callback_args, **callback_kwargs) 
File "/home/swat/website-apps/foodfolio/app/controller.py" in __showLogin__ 
    238.    context_instance = RequestContext(request)) 
File "/usr/lib/pymodules/python2.6/django/shortcuts/__init__.py" in render_to_response 
    20.  return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs) 
File "/usr/lib/pymodules/python2.6/django/template/loader.py" in render_to_string 
    108.  return t.render(context_instance) 
File "/usr/lib/pymodules/python2.6/django/template/__init__.py" in render 
    178.   return self.nodelist.render(context) 
File "/usr/lib/pymodules/python2.6/django/template/__init__.py" in render 
    779.     bits.append(self.render_node(node, context)) 
File "/usr/lib/pymodules/python2.6/django/template/debug.py" in render_node 
    71.    result = node.render(context) 
File "/usr/lib/pymodules/python2.6/django/template/__init__.py" in render 
    946.        autoescape=context.autoescape)) 
File "/usr/lib/pymodules/python2.6/django/template/__init__.py" in render 
    779.     bits.append(self.render_node(node, context)) 
File "/usr/lib/pymodules/python2.6/django/template/debug.py" in render_node 
    81.    raise wrapped 

Exception Type: TemplateSyntaxError at /foodfolio/login 
Exception Value: Caught an exception while rendering: No module named app.models 

回答

0

看起来好像你引用app.models,这往往工作在发展很好,但在生产中失败。将其更改为foodfolio.app.models,并且应该没问题。这似乎是在您的自定义模板标签中的某处。