[英]How to save django form without displaying it
我有一个显示父表单和子表单集的页面(se_balance.html)。 父表单的内容由用户在上一页选择的链接设置。 我只想显示要保存的表单集和父表单而不显示,但是,如果我在 html 中没有父表单,我会收到与父表单无效相关的错误。
这是用于生成相关页面的视图
class CaseView(TemplateView):
model = Case
template_name = "../templates/se_balance.html"
def get(self, *args, **kwargs):
# here the parent form is created based on user selected link from previous page
p = self.request.GET.get("p", None)
case_form = CaseForm(initial={'pharm_class_name': p}) #i
sideeffect_formset = SideeffectFormSet(queryset=SideEffect.objects.none())
return self.render_to_response(
{ "case_form": case_form,
"sideeffect_formset": sideeffect_formset,
"sideeffect_formsethelper": SideEffectFormSetSetHelper,
}
)
def post(self, *args, **kwargs):
form = CaseForm(data=self.request.POST)
sideeffect_formset = SideeffectFormSet(data=self.request.POST)
if form.is_valid():
case_instance = form.save(commit=False)
if self.request.user.is_authenticated:
case_instance.user = self.request.user
case_instance.save()
if sideeffect_formset.is_valid():
sideeffect_name = sideeffect_formset.save(commit=False)
for sideeffect in sideeffect_name:
sideeffect.case = case_instance
sideeffect.save()
return redirect(
reverse(
"results",
kwargs={"case_id": case_instance.case_id},
)
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.