Показывать JsignatureField как изображения в pdf для Django3
здесь я использую Python3 и Django3 я не могу отобразить подписи в моем представлении pdf
Вот мой views.py, где показано, как я сохраняю свои подписи
class GasSafetyRecordView(View):
def get(self, request, job_id, form_id):
client = request.user.client
job = get_object_or_404(AddJob, id=job_id, client=client)
safety_form = GasSafetyForm()
......
....
return render(request, 'crm/jobforms/gas_safety_record.html', {
'safety_form': safety_form,'client': client,
....
....
})
def post(self, request, job_id, form_id):
client = request.user.client
safety_form = GasSafetyForm(request.POST)
if safety_form.is_valid():
form_obj = safety_form.save(commit=False)
form_obj.client = client
form_obj.save()
return render(request, 'crm/jobforms/gas_safety_record.html', {
'safety_form': safety_form, 'client': client,
.....
....
})
вот мой forms.py для сохранения подписей
class GasSafetyForm(forms.ModelForm):
engineer_signature = SignatureField(required=False)
class Meta:
model = GasSafetyRecord
fields = ('client','engineer_signature')
вот мой шаблон gas_safety_record.html
<div class="col-sm-6 col-xs-12 margT10">
{{safety_form.engineer_signature}}
</div>
Теперь я хочу отобразить эту подпись инженера в моем pdf
вот мой views.py для просмотра pdf
def render_to_pdf_gasrecordform_view(template_src, context_dict):
template = get_template(template_src)
# context = Context(context_dict)
html = template.render(context_dict)
result = BytesIO()
pdf = pisa.pisaDocument(BytesIO(html.encode("UTF-8")), result,
encoding='UTF-8')
if not pdf.err:
response = HttpResponse(result.getvalue(), content_type='application/pdf')
return response
return HttpResponse('We had some errors<pre>%s</pre>' % cgi.escape(html))
def generate_gasrecordform_pdf_view(request,id,pk,serialnumber):
client = request.user.client
gasrecord = GasSafetyRecord.objects.filter(client_id=client,formjob_id=id,serial_number=serialnumber).values()
return render_to_pdf_gasrecordform_view('crm/gas_record_pdf.html',{'gasrecord':gasrecord,'client':client})
Вот мой gas_record_pdf.html для pdf
<td>
<img src="{{ gasrecord.0.engineer_signature }}"/>
</td>
Вот мой models.py
class GasSafetyRecord(models.Model):
engineer_signature = SignatureModelField(default='', blank=True, null=True)
....
....
Здесь я четко описал, как я сохраняю свою подпись инженера и как я отображаю ее в моем pdf представлении
Я не могу понять, где я ошибаюсь, но я не могу отобразить подпись инженера в моем pdf
Полагаю, что это проблема с img src в шаблонах. Пожалуйста, помогите, как я могу отобразить это