Как передать объект файла в шаблон в Django - PullRequest
2 голосов
/ 11 января 2012

Я читаю файл в myView и передаю его в myTemplate

myView

fp = open('D:/python1/format.pdf', 'rb')        
data = fp.read()             

response = HttpResponse(data, mimetype="application/pdf")
template = get_template('myTemplate.html')

variables = RequestContext(request, {'file':response})
output = template.render(variables)                
return HttpResponse(output)

myTemplate

<object id="pdf" height="100%" width="100%" type="application/pdf" data="{{file}}">

Проверьте ссылку . Они сделали то же самое с файлом CSV

Примечание :
Я сделал это успешно для файла изображения в zope (используя обработчик python для чтения файла и Dtml для помещения необработанных данных изображения в 'src').Проверьте эту ссылку .

, и я знаю, что Django shouldn't serve static files. Это особый случай.

1 Ответ

1 голос
/ 11 января 2012

Вы можете передать данные файла в виде строки в шаблон как

fp = open('D:/python1/format.pdf', 'rb')        
data = fp.read()
variables = RequestContext(request, {'file': data})
output = template.render(variables)                
return HttpResponse(output)

Или вы можете использовать их с веб-сервером.

Не думаю, что вы можетесделать что-нибудь еще: -)

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