2013-04-09 54 views
0

我使用django-endless-pagination与Twitter风格为我的网站,它在开发中完美地工作,但是当我移到生产它甚至不显示条目。我正在使用webfaction,下面是我采取的操作列表。 1)PYTHONPATH = $ HOME/webapps/csiop/lib/python2.7 easy_install-2.7 --install-dir = $ HOME/webapps/csiop/lib/python2.7 --script-dir = $ HOME/webapps/csiop/ 2)蟒manage.py执行syncdb 3)添加到endless_pagination settings.py中和下面也settings.pydjango无尽的分页不在生产中工作,但在作品中的发展

PAGINATION_SETTINGS = { 
    'PAGE_RANGE_DISPLAYED': 10, 
    'MARGIN_PAGES_DISPLAYED': 2, 
} 

4)我views.py改变为web应用/ CSIOP/bin中的django-无端分页看起来像下面

def homepage(request): 
     item_list = items.objects.filter(show_on_website=True) 
     template = 'homepage.html' 
     page_template = 'home_page_index.html' 

     if request.is_ajax(): 
      template = page_template 

     return render_to_response(template, 
     {'page_template': page_template, 
     'item_list': item_list}, 
     context_instance=RequestContext(request)) 

5)而我的模板是slipt如下。

Homepage.html: -

<h2>Entries:</h2> 
    {% include page_template %} 

    {% block js %} 
     {{ block.super }} 
     <script src="http://code.jquery.com/jquery-latest.js"></script> 
     <script src="{{ STATIC_URL }}endless_pagination/js/endless-pagination.js"></script> 
     <script>$.endlessPaginate();</script> 
    {% endblock %} 

home_page_index.html: -

{% load endless %} 

    {% lazy_paginate entries %} 
     {% for entry in entries %} 
     {# your code to show the entry #} 
     {% endfor %} 
    {% show_more " " %} 

上面的代码工作在我的发展完全正常,但尚未投入生产。 有人可以帮助我失踪?

编辑: - 如果我在我的开发环境中设置调试模式为False我得到下面的错误。我也在网站上使用django-seo,它似乎在抱怨,但我不确定这个错误究竟意味着什么。

Traceback (most recent call last): 
    File   "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/wsgiref/handlers.py", line 85, in run 
    self.result = application(self.environ, self.start_response) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site- packages/django/core/handlers/wsgi.py", line 255, in __call__ 
    response = self.get_response(request) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/core/handlers/base.py", line 178, in get_response 
    response = self.handle_uncaught_exception(request, resolver, sys.exc_info()) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/core/handlers/base.py", line 224, in handle_uncaught_exception 
    return callback(request, **param_dict) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/utils/decorators.py", line 91, in _wrapped_view 
    response = view_func(request, *args, **kwargs) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/views/defaults.py", line 41, in server_error 
    return http.HttpResponseServerError(template.render(Context({}))) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 140, in render 
    return self._render(context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 134, in _render 
    return self.nodelist.render(context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 830, in render 
    bit = self.render_node(node, context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 844, in render_node 
    return node.render(context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/loader_tags.py", line 124, in render 
    return compiled_parent._render(context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 134, in _render 
    return self.nodelist.render(context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 830, in render 
    bit = self.render_node(node, context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/django/template/base.py", line 844, in render_node 
    return node.render(context) 
    File "/Users/django1.5/django1.5_ve/lib/python2.7/site-packages/rollyourown/seo/templatetags/seo.py", line 25, in render 
    raise template.TemplateSyntaxError(msg) 
    TemplateSyntaxError: {% get_metadata %} needs some path information. 
    Please use RequestContext with the django.core.context_processors.request context processor. 
    Or provide a path or object explicitly, eg {% get_metadata for path %} or {%  get_metadata for object %} 
    [09/Apr/2013 18:22:49] "GET/HTTP/1.1" 500 59 

感谢

+0

如果您的本地计算机上关闭了调试模式,它会工作吗? – 2013-04-09 17:07:30

+0

嗨,它不工作在开发中,如果我使用调试模式为假。我在编辑中更新了错误。它抱怨seo中的元数据,我不确定问题是什么。你能帮忙吗? – Dev 2013-04-09 17:29:20

回答

0

我已经使用pip重新安装了django-endless-pagination,而不是简单安装,现在它工作正常。看起来像这个问题是因为我之前没有-Z之前安装了易于安装。

1

当您关闭调试模式,Django的停止处理您的静态文件给你。在您的远程主机上,您需要设置STATIC_ROOT路径并设置manage.py collectstatic。你也可以看看this question

+0

嗨,我已经在我的生产环境中运行了collectstatic,但仍然无法正常工作。即使在我的本地环境中,它也会提供我在编辑中复制的错误消息。我试着运行“manage.py runserver --insecure”以及在我的开发中,但仍然得到相同的错误。 – Dev 2013-04-09 17:59:19

+1

您使用渲染还是render_to_response? django-seo页面上有一个关于类似问题的错误,但它是在2年前。你的包是最新的吗? https://github.com/willhardy/django-seo/issues/14 – 2013-04-09 18:02:33

+0

是的。我的django-seo是最新的,我正在使用render_to_response。只有在我添加了endless_pagination之后,才会显示错误。如果我删除了endless_pagination,那么网站工作正常,没有任何错误。 – Dev 2013-04-09 18:11:17

相关问题