Как открыть шаблон в платформе Django - PullRequest
0 голосов
/ 25 ноября 2011

Я хочу открыть HTML-файл, т. Е. Map.html, который сохраняется в тех же каталогах, где я сохранил views.py и urls.py.(платформа на основе django)

Я написал этот пример кода для views.py (для загрузки map.html), но он не работает:

 from django.template import Template, Context,RequestContext 
 from django.http import HttpResponse
 import datetime

 def router_map(request):
     fp = open('./map.html')
     t = Template(fp.read())
     fp.close()
     html = t.render(Context({'router_map'}))
     return HttpResponse(html)

, и мой urls.py:

 from django.conf.urls.defaults import * 
 from umit.views import router_map

 urlpatterns = patterns('',
     (r'^index/$', router_map),
 )

1 Ответ

1 голос
/ 25 ноября 2011

Проблема, я думаю, в том, что вы используете путь './map.html'.Это означает, что Python будет пытаться найти текущий каталог программы , а не тот каталог, в котором находится файл представления.

Допустим, проект Django находится в каталоге /home/foo/myproject.Если вы cd перейдете в этот каталог и запустите python manager.py runserver, текущим каталогом внутри приложения (т. Е. Каталогом .) будет /home/foo/myproject, а это не то, что вам нужно.

Самый простой способчтобы исправить это, используйте полный путь к файлу в вашем звонке на open:

fp = open('/home/foo/myproject/myapp/views/map.html')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...