I have a Django web application and I would like it to product an html pdf. I was sent HTML templates to work with, and out of the three I received, two work and one doesn't. Everytime I acsess this view, it gives me UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfe in position 0: invalid start byte.
Here is the full error:
UnicodeDecodeError at /documents/973/generate/preliminary
'utf-8' codec can't decode byte 0xfe in position 0: invalid start byte
The string that could not be encoded/decoded was: ??{%
Here is my code:
views.py
def generatePreliminary(request, fileNumber):
claim = ClaimMaster.objects.get(fileNumber=fileNumber)
documents = []
for claimz in ClaimSub.objects.filter(claim=claim):
docu = Document.objects.filter(claim=claimz)
for doc in docu:
documents.append(doc)
data = {
'claim': claim,
'documents': documents,
'insurers': InsurerLink.objects.filter(claim=claim),
'insured': InsuredLink.objects.filter(claim=claim),
}
template = get_template('documentApplication/preliminaryreport.html')
data_p = template.render(data)
response = BytesIO()
pdfPage = pisa.pisaDocument(BytesIO(data_p.encode("UTF-8")), response)
if not pdfPage.err:
return HttpResponse(response.getvalue(), content_type="application/pdf")
else:
return HttpResponse("Error")
preliminary.html template:
<html>
<head>
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin-top:0in;
margin-right:0in;
margin-bottom:9.0pt;
margin-left:0in;
line-height:130%;
font-size:10.0pt;
font-family:"Tahoma",sans-serif;
color:#7F7F7F;}
h1
{mso-style-link:"Heading 1 Char";
margin-top:12.0pt;
margin-right:0in;
margin-bottom:8.0pt;
margin-left:0in;
page-break-after:avoid;
font-size:12.0pt;
font-family:"Tahoma",sans-serif;
color:#0E0B05;
text-transform:uppercase;}
p.MsoListBullet, li.MsoListBullet, div.MsoListBullet
{margin-top:0in;
margin-right:0in;
margin-bottom:6.0pt;
margin-left:.15in;
text-indent:-.15in;
line-height:130%;
font-size:10.0pt;
font-family:"Tahoma",sans-serif;
color:#7F7F7F;}
p.MsoSubtitle, li.MsoSubtitle, div.MsoSubtitle
{mso-style-link:"Subtitle Char";
margin-top:0in;
margin-right:0in;
margin-bottom:8.0pt;
margin-left:0in;
line-height:130%;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
color:#5A5A5A;
letter-spacing:.75pt;}
span.Heading1Char
{mso-style-name:"Heading 1 Char";
mso-style-link:"Heading 1";
font-family:"Tahoma",sans-serif;
color:#0E0B05;
text-transform:uppercase;
font-weight:bold;}
p.Name, li.Name, div.Name
{mso-style-name:Name;
margin-top:0in;
margin-right:0in;
margin-bottom:9.0pt;
margin-left:0in;
line-height:80%;
font-size:35.0pt;
font-family:"Tahoma",sans-serif;
color:#0E0B05;
text-transform:uppercase;
font-weight:bold;}
span.SubtitleChar
{mso-style-name:"Subtitle Char";
mso-style-link:Subtitle;
font-family:"Calibri",sans-serif;
color:#5A5A5A;
letter-spacing:.75pt;}
.MsoChpDefault
{font-size:10.0pt;
font-family:"Tahoma",sans-serif;
color:#7F7F7F;}
.MsoPapDefault
{margin-bottom:9.0pt;
line-height:130%;}
@page WordSection1
{size:8.5in 11.0in;
margin:.9in .95in 1.0in .95in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
-->
</style>
</head>
<body lang=EN-US style='word-wrap:break-word'>
<div class=WordSection1>
<p class=Name align=center style='text-align:center'><img width=179 height=179
src="Name.fld/image001.png"></p>
<p class=Name align=center style='text-align:center'><span style='font-size:
14.0pt;line-height:80%'>compname</span><span
style='font-size:24.0pt;line-height:80%'> </span></p>
<p class=Name align=center style='text-align:center'>PRELIMINARY REPORT</p>
<p class=Name><span style='font-size:10.0pt;line-height:80%;color:windowtext;
text-transform:none;font-weight:normal'>Report date: </span><span
style='font-size:10.0pt;line-height:80%;color:windowtext;text-transform:none'>21/05/02</span></p>
<p class=Name><span style='font-size:10.0pt;line-height:80%;color:windowtext;
text-transform:none;font-weight:normal'>Report Number: </span><span
style='font-size:10.0pt;line-height:80%;color:windowtext;text-transform:none'>abc</span></p>
<p class=Name align=center style='text-align:center'> </p>
<div style='border-top:solid #262626 3.0pt;border-left:none;border-bottom:solid #7F7F7F 1.0pt;
border-right:none;padding:5.0pt 0in 5.0pt 0in'>
<h1>PRELIMINARY REPORT</h1>
</div>
<p class=MsoNormal>A preliminary report is an initial report. </p>
<div style='border-top:solid #262626 3.0pt;border-left:none;border-bottom:solid #7F7F7F 1.0pt;
border-right:none;padding:5.0pt 0in 5.0pt 0in'>
<h1>BRIEF Claim Information</h1>
</div>
<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width="100%"
style='width:100.0%;border-collapse:collapse'>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>comp
File Number</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border:solid #BFBFBF 1.0pt;
border-left:none;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>fileNumber</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>comp
Serial Number</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
none;border-bottom:solid #BFBFBF 1.0pt;border-right:solid #BFBFBF 1.0pt;
background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>serialNumber</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>Date of
loss</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
none;border-bottom:solid #BFBFBF 1.0pt;border-right:solid #BFBFBF 1.0pt;
padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>date</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>Period of
Loss</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
none;border-bottom:solid #BFBFBF 1.0pt;border-right:solid #BFBFBF 1.0pt;
background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>period</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>Insurer</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
none;border-bottom:solid #BFBFBF 1.0pt;border-right:solid #BFBFBF 1.0pt;
padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>insurer</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>Insurer
Claim Number</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
none;border-bottom:solid #BFBFBF 1.0pt;border-right:solid #BFBFBF 1.0pt;
background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>Insurer claim</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>Insured</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
none;border-bottom:solid #BFBFBF 1.0pt;border-right:solid #BFBFBF 1.0pt;
padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>insured</p>
</td>
</tr>
</table>
<p class=MsoListBullet style='margin-left:0in;text-indent:0in'> </p>
<div style='border-top:solid #262626 3.0pt;border-left:none;border-bottom:solid #7F7F7F 1.0pt;
border-right:none;padding:5.0pt 0in 5.0pt 0in'>
<h1>ENTITY INFORMATION</h1>
</div>
<p class=MsoSubtitle>INSURED </p>
<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0 width="100%"
style='width:100.0%;border-collapse:collapse'>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>Insured</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border:solid #BFBFBF 1.0pt;
border-left:none;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'>fileNumber</p>
</td>
</tr>
<tr>
<td width="20%" valign=top style='width:20.24%;border:solid #BFBFBF 1.0pt;
border-top:none;background:#F2F2F2;padding:6.5pt 5.4pt 6.5pt 5.4pt'>
<p class=MsoNormal style='margin-bottom:0in;line-height:normal'><b>TIN</b></p>
</td>
<td width="79%" valign=top style='width:79.76%;border-top:none;border-left:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…