本文整理汇总了Python中survey.models.SurveyForm.is_valid方法的典型用法代码示例。如果您正苦于以下问题:Python SurveyForm.is_valid方法的具体用法?Python SurveyForm.is_valid怎么用?Python SurveyForm.is_valid使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类survey.models.SurveyForm
的用法示例。
在下文中一共展示了SurveyForm.is_valid方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: manage_survey
# 需要导入模块: from survey.models import SurveyForm [as 别名]
# 或者: from survey.models.SurveyForm import is_valid [as 别名]
def manage_survey(request, survey_id=None):
UserQuestionForm = user_question_form(request.user.id)
SurveyQuestionFormset = inlineformset_factory(Survey, SurveyQuestion, form=UserQuestionForm)
if survey_id is not None:
survey = get_object_or_404(Survey, id__exact=int(survey_id))
if survey.user != request.user:
return HttpResponseForbidden()
else:
survey = None
if request.POST:
survey_form = SurveyForm(request.POST, instance=survey)
if not survey_form.is_valid():
messages.error(request, 'Please complete required fields.')
return HttpResponseRedirect('/survey/create/')
survey_instance = survey_form.save(commit=False)
survey_instance.user_id = request.user.id
survey_instance.save()
survey_question_formset = SurveyQuestionFormset(request.POST, instance=survey)
if survey_question_formset.is_valid():
survey_question_instance = survey_question_formset.save(commit=False)
for sqi in survey_question_instance:
sqi.survey_id = survey_instance.id
sqi.save()
if survey_id is None:
messages.success(request, 'New survey successfully created.')
else:
messages.success(request, 'Survey successfully updated.')
return HttpResponseRedirect('/survey/')
else:
survey_form = SurveyForm(instance=survey)
survey_question_formset = SurveyQuestionFormset(instance=survey)
ctx = {
'survey_form': survey_form,
'survey_question_formset': survey_question_formset
}
return render(request, 'survey/manage_survey.html', ctx)