我创建了一个网站,我的技术人员使用模型表格提交了库存。一切都按预期工作,但我想添加功能,当他们提交清单时以电子邮件形式发送整个表格。这将使我的库存团队无需登录并检查网站即可验证计数。
这是我的view.py,我知道如果删除电子邮件位并将其保存到模型中,它将起作用。当前返回错误: 'dict'对象没有属性'splitlines'
form = Inventory_Form()
if request.method == 'POST':
form = Inventory_Form(request.POST)
tech_field = form.save(commit=False)
tech_field.technician = request.user
tech_field.save()
if form.is_valid():
form.save()
name = form.cleaned_data['initials_date']
from_email = 'operations@imbadatthis.com'
subject = 'Weekly Inventory', form.cleaned_data['initials_date']
message = form.cleaned_data
try:
send_mail(subject, message, from_email, ['myemail@n00b.com'], name)
except BadHeaderError:
return HttpResponse('Invalid header found.')
return response, redirect('inventory_submitted')
return render(request, 'inventory.html', {'form': form})
将表单保存到csv,然后将其作为电子邮件附加会更好吗?我看着这个,在那部分也有问题。
答案 0 :(得分:1)
我猜是由于{p>
send_mail
因为这是 message = form.cleaned_data
,而来自django的dict
希望邮件是send_mail
。
您必须将字典转换为字符串。
也许this有助于使电子邮件看起来更漂亮。 (documentation)