Пример #1
0
def update_grupa(request, group_id=None):

    if not request.user.groups.filter(name='Autorzy').exists():
        messages.warning(request,
                         "Aby dodawać grupy, musisz należeć do grupy Autorzy")
        return redirect('/grupy/')

    object_list = Grupa.objects.filter(autor=request.user)

    if (group_id):
        group = Group.objects.select_related('grupa').get(pk=group_id)
    else:
        group = Group()
        group.grupa = Grupa()

    if request.method == 'POST':
        group_form = GroupForm(request.POST, instance=group)
        grupa_form = GrupaForm(request.POST, instance=group.grupa)
        grupa_form.instance.autor = request.user
        if group_form.is_valid() and grupa_form.is_valid():
            group_form.instance.autor = request.user
            group_form.instance.token = grupa_form.instance.token
            group_form.save()
            # grupa_form.instance.grupa = obj
            # grupa_form.save()
            messages.success(request, ('Dodano grupę'))
            return redirect('pytania:grupa')
        else:
            messages.error(request, ('Popraw poniższe błędy.'))
    else:
        group_form = GroupForm(instance=group)
        grupa_form = GrupaForm(instance=group.grupa)

    return render(
        request, 'pytania/grupa_form.html', {
            'object_list': object_list,
            'group_form': group_form,
            'grupa_form': grupa_form
        })