django - 具有两种形式的 Django 视图未发布一个
问题描述
我试图使用一种表单来获取两个不同模型的数据,为此,我更改了我的创建视图 get_context_data 函数,如下所示:
class tarea_crear(CreateView):
template_name = "crud_tareas/tarea_crear.html"
form_class = tareaForm
success_url = reverse_lazy('tareas:crear-tarea')
def get_context_data(self, **kwargs):
context = super(tarea_crear, self).get_context_data(**kwargs)
context['form'] = {'audiosForm':audiosForm,'tareaForm':tareaForm}
return context
这让我可以在我的模板上调用这两个表单,如下所示:(别担心,我记得 crfs 标签和表单)
{{form.tareaForm.as_p}}
{{form.audiosForm.as_p}}
<input type="submit" value="Crear Tarea">
我还需要验证第一个表单中的一些信息,我在视图中这样做了:
def form_valid(self, form):
titulo = form.cleaned_data['titulo']
if not any(i.isdigit() for i in titulo):
return super(tarea_crear, self).form_valid(self, form)
return super(tarea_crear, self).form_invalid(self, form)
问题是,当我对表单进行 POST 时,实际上只发送了前半部分数据,我知道这一点是因为我无法在视图中调用form.cleaned_data['audios']而不出现错误。知道如何处理具有两种形式的视图吗?
解决方案
推荐阅读
- flutter - 无法在 MacO 上安装 Flutter,提示解压缩过程不起作用
- reactjs - 使用 react-phone-input-2 作为 Ant AutoComplete 的自定义输入
- c# - 使用 Web Service 时出错:响应消息的内容类型 multipart/related 与绑定的内容类型不匹配
- c# - unity error: An object refrence is required for non-static field, method, or property "Enemy.points"
- python - 实例文档和计算文档之间的 XBRL 标签名称不同
- google-bigquery - 使用 BigQuery 即时生成 JSON
- audio - 用于检测给定音频信号的应用程序
- algorithm - 简单无向图 K3,5 是否包含完美匹配、哈密顿循环或欧拉路径/循环?
- django - 按下验证链接后... Django 中没有任何反应 .. 用户仍未验证
- elasticsearch-dsl - 仅聚合多个字段的非负数