Приложение работает на локальном хосте, но не на appspot - PullRequest
2 голосов
/ 16 апреля 2011

Я работаю над тем, чтобы пользователи аутентифицировались на моей веб-странице с помощью Foursquare, после того как они перенаправлены обратно на мою веб-страницу, полученная информация анализируется из URL-адреса.Это прекрасно работает на локальном хосте, но при его развертывании я получаю следующую ошибку

    Traceback (most recent call last):
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/__init__.py", line 634, in __call__
    handler.get(*groups)
  File "/base/data/home/apps/hoosheer/4.349803081119561985/hoosheer_main.py", line 34, in get
    foursquareMethods.foursquareDetails(self)
  File "/base/data/home/apps/hoosheer/4.349803081119561985/foursquareMethods.py", line 40, in foursquareDetails
    doRender(self, '500.html')
  File "/base/data/home/apps/hoosheer/4.349803081119561985/foursquareMethods.py", line 67, in doRender
    handler.response.out.write(template.render(path, template_values))
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/template.py", line 72, in render
    t = load(template_path, debug)
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/template.py", line 100, in load
    template = django.template.loader.get_template(file_name)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/loader.py", line 80, in get_template
    template = get_template_from_string(source, origin, template_name)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/loader.py", line 88, in get_template_from_string
    return Template(source, origin, name)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/__init__.py", line 158, in __init__
    self.nodelist = compile_string(template_string, origin)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/__init__.py", line 174, in compile_string
    return parser.parse()
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/__init__.py", line 273, in parse
    compiled_result = compile_func(self, token)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/loader_tags.py", line 154, in do_extends
    nodelist = parser.parse()
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/__init__.py", line 273, in parse
    compiled_result = compile_func(self, token)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/loader_tags.py", line 132, in do_block
    nodelist = parser.parse(('endblock', 'endblock %s' % block_name))
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/__init__.py", line 280, in parse
    self.unclosed_block_tag(parse_until)
  File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/__init__.py", line 318, in unclosed_block_tag
    raise self.error(None, "Unclosed tags: %s " %  ', '.join(parse_until))
TemplateSyntaxError: Unclosed tags: endblock, endblock bodycontent

ОБНОВЛЕНИЕ

Строка в моем коде, которая, кажется, вызывает это, когда япопробуйте doRender(self, '500.html') Это метод doRender

def doRender(handler, tname, values = { }):    
    template_values = dict(values) 
    handler.session = Session()
    if 'access_token' in handler.session: 
        template_values['access_token'] = handler.session['access_token'] 
    path = os.path.join(os.path.dirname(__file__), tname)
    handler.response.out.write(template.render(path, template_values))

, а шаблон выглядит следующим образом

{% extends "index.html" %} 
{% block bodycontent %}
Server Error
      <p>
      There has been an error
      </p>
{% endblock %}

Ответы [ 2 ]

1 голос
/ 17 апреля 2011

Есть ли у вас настройка обработчика '/ _ah / login_required' в вашем файле app.yaml?

Я предполагаю, что вы включили федеративный вход, чтобы разрешить учетные данные Foursquare.Если это так, вам нужно определить свой собственный обработчик входа в систему, чтобы он работал в appspot (localhost использует другую обработку входа в систему).

ex:

handlers:
- url: /_ah/login_required
  script: do_openid_login.py
0 голосов
/ 18 апреля 2011
TemplateSyntaxError: Unclosed tags: endblock, endblock bodycontent

сообщает вам, где находится хотя бы одна проблема.Закройте endblock:

{% endblock %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...