Beispiel #1
0
def problem_detail(request, sheet_slug, assignment_slug, task_slug, problem_slug):
    task = Sheet.objects.get(slug=sheet_slug).assignment_set.get(slug=assignment_slug).task_set.get(slug=task_slug)
    problem = task.problem_set.get(slug=problem_slug)
    form = ProblemForm(request.POST or None, task=task, instance=problem)

    if form.is_valid():
        form.save()
        return redirect('sheet_detail', slug=sheet_slug)

    return render(request, 'problem_detail.html', {
        'form': form,
        'sheet_slug': sheet_slug,
        'assignment_slug': assignment_slug,
        'task_slug': task_slug,
        'problem_slug': problem_slug
    })
Beispiel #2
0
def add_problem(request, sheet_slug, assignment_slug, task_slug):
    task = Sheet.objects.get(slug=sheet_slug).assignment_set.get(slug=assignment_slug).task_set.get(slug=task_slug)
    form = ProblemForm(request.POST or None, task=task)

    if form.is_valid():
        problem = form.save(task=task)
        problem.save()
        return redirect('problem_detail', sheet_slug=sheet_slug, assignment_slug=assignment_slug,
                        task_slug=task_slug,
                        problem_slug=problem.slug)

    return render(request, 'add_problem.html', {
        'form': form,
        'sheet_slug': sheet_slug,
        'assignment_slug': assignment_slug,
        'task_slug': task_slug
    })