def add_category(request, contest_id):
contest = get_object_or_404(models.TaskBasedContest, pk=contest_id)
if contest.tasks_grouping != models.TasksGroping.ByCategories:
return HttpResponseNotFound()
if request.method == 'POST':
form = forms.CategoryForm(data=request.POST)
if form.is_valid():
category = categories_models.Category(
name=form.cleaned_data['name'],
description=form.cleaned_data['description']
)
with transaction.atomic():
category.save()
contest.categories_list.categories.add(category)
contest.save()
return redirect(urlresolvers.reverse('contests:tasks', args=[contest.id]))
else:
form = forms.CategoryForm()
return render(request, 'contests/create_category.html', {
'current_contest': contest,
'contest': contest,
'form': form,
})
评论列表
文章目录