django - 'tuple' 对象没有属性 'get' 属性错误
问题描述
add_form = CarAddForm()
if request.method == "POST":
add_form = CarAddForm(data=(request.POST, request.FILES) or None)
if add_form.is_valid:
prof = add_form.save(commit=False)
prof.profile = request.user.profile
prof.purchase_yr = str(request.POST.get('purc_date'))
prof.save()
print("abc")
print(add_form)
messages.success(request,'Details saved successfully', extra_tags='alert')
return redirect('/')
else:
add_form = CarAddFormCar()
messages.error(request,'Something went wrong!', extra_tags='alert')
prof = add_form.save(commit=False) 正在制造问题。**prof = add_form.save(commit=False) 正在制造问题。**
解决方案
这不是用数据实例化表单的方式。做就是了:
add_form = CarAddForm(request.POST, request.FILES)
还要注意,is_valid
是一个方法,你需要调用它:
if add_form.is_valid():
如果表单无效,则将表单重新创建为空是没有意义的;用户只会看到您模糊的“出现问题”消息,但不知道出了什么问题。add_form = CarAddFormCar()
在 else 块中删除它。
推荐阅读
- python - 在不使用 Kmeans 导入的情况下获取 KMeans 轮廓平均分数
- d3.js - D3 sankey 图中更亮的节点颜色
- javascript - 根据嵌套数组中的一些值查找两个数组之间的差异
- windows - 如何在 Visual Studio 2019 集成终端中使用 git 命令
- python - 当我使主窗口全屏时如何使框架扩展?
- python - 如何从 .csv Python 数据框中的列中打印单个字符串单元格?
- javascript - 项目超过限制时引导导航栏折叠菜单
- php - 调用 github api 不会返回任何东西
- embedded - 是否可以对 STM32 设备进行无线编程?
- python - 如何在不丢失数据的情况下通过网络在 python 中发送文件?