本文整理汇总了Python中survey.models.Survey.add_questions方法的典型用法代码示例。如果您正苦于以下问题:Python Survey.add_questions方法的具体用法?Python Survey.add_questions怎么用?Python Survey.add_questions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类survey.models.Survey
的用法示例。
在下文中一共展示了Survey.add_questions方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: post
# 需要导入模块: from survey.models import Survey [as 别名]
# 或者: from survey.models.Survey import add_questions [as 别名]
def post(self, request, *args, **kwargs):
warnings = []
data = json.loads(request.POST.get('r'))
title = data.get('title', '')
slug = slugify(data.get('slug') or title)
if not slug:
warnings.append(_('Please enter a valid title.'))
return HttpResponse(json.dumps({'status': 'failure', 'warnings': warnings}), mimetype='application/json')
try:
survey = self.get_object()
if slug != survey.slug:
warnings.append(_("This survey's URL has been changed. Be sure to update any QR code images."))
except AttributeError:
survey = Survey(creator=request.user)
survey.title = title
survey.slug = slug
survey.description = data.get('description', '')
try:
survey.save()
except IntegrityError:
warnings = [_('That title is already taken. Please choose a different one.')]
return HttpResponse(json.dumps({'status': 'failure', 'warnings': warnings}), mimetype='application/json')
# delete existing questions
# due to cascading deletes, this will also delete choices
QuestionGroup.objects.filter(pk__in=survey.question_set.all().values_list('group')).delete()
survey.question_set.all().delete()
questions = data.get('questions', [])
groups = data.get('groups', [])
survey.add_questions(questions, groups)
return HttpResponse(json.dumps({'status': 'success', 'warnings': warnings, 'url': reverse('surveydashboard', args=[survey.slug])}), mimetype='application/json')