AttributeError at /website/tbt.html Объект 'User' не имеет атрибута 'get'
Я пытаюсь сгенерировать pdf из данных, полученных пользователем. в данном случае он содержит несколько полей, как показано в модели. После нажатия кнопки отправки выдается ошибка my models.py
tbt_date = models.DateField(
verbose_name="Date of Creation", default=timezone.now
)
selected_site = models.ForeignKey(
sites_data, verbose_name="Choose a site", on_delete=models.CASCADE
)
selected_block = models.ForeignKey(
blocks_list, verbose_name="Choose a block", on_delete=models.SET_NULL, null=True
)
tbt_report_img1 = models.ImageField(
upload_to="formImages/TBT/", verbose_name="Upload Image 1"
)
tbt_report_img2 = models.ImageField(
upload_to="formImages/TBT/", verbose_name="Upload Image 2"
)
rt_pdf = models.FileField(upload_to='pdfs/', verbose_name='PDF File', null=True)
my views.py
tbt_form_view = tbt_report_form()
context = {
"loggedInUser": request.user,
"tbt_form":tbt_form_view,
}
return context
#@login_required(login_url="user_login")
def generate_tbt_report(request, t_form, selected_form, filename):
selected_site = t_form.selected_site
selected_block = t_form.selected_block
selected_site_data = sites_data.objects.filter(name=selected_site)[0]
tbt_date = t_form.tbt_date
print(tbt_date)
params = {
"selected_site": selected_site_data,
"tbt_date": tbt_date,
"selected_block": selected_block,
"t": t_form,
"data": selected_form,
"loggedInUser": request.user,
}
template_path = "website/tbt_report_pdf.html"
temp_pdf = render_to_pdf(request, template_path, params, filename)
return temp_pdf
@login_required(login_url="user_login")
def tbt_form(request):
if request.method == "POST":
t_form=tbt_report_form(request.user, request.POST, request.FILES)
t_form.full_clean()
print("in post")
if t_form.is_valid():
print("Valid")
t_form = t_form.save()
filename='TBT' + ' ' + str(t_form.tbt_date) + ' ' + str(t_form.selected_block) + '.pdf'
pdf = generate_tbt_report(request, t_form, filename)
cv_get = tbt_report.objects.get(id = t_form.id)
cv_get.rt_pdf.save(filename, File(BytesIO(pdf.content)))
print("Saved")
return pdf
else:
print("1")
print(t_form)
messages.error(
request=request, message="Please check all the fields entered!!!"
)
return render(request, "website/tbt.html", context=tbtform(request))
else:
return render(request, "website/tbt.html", context=tbtform(request))
my tbt.html
Это дает мне ошибку, которая гласит:
Ошибка атрибута в /website/tbt.html У объекта 'User' нет атрибута 'get'