mirror of
https://github.com/kristoferssolo/FOSSDB.git
synced 2025-10-21 17:50:35 +00:00
Fix language % input
This commit is contained in:
parent
a969a90007
commit
7da126c2f0
@ -1,9 +1,8 @@
|
||||
from django.contrib.auth.decorators import login_required, permission_required
|
||||
from django.forms import formset_factory
|
||||
from django.shortcuts import redirect, render
|
||||
|
||||
from .forms import ProjectForm, ProjectProgrammingLanguageForm
|
||||
from .models import ProgrammingLanguage, Project
|
||||
from .forms import ProjectForm, ProjectProgrammingLanguageFormSet
|
||||
from .models import Project
|
||||
|
||||
|
||||
def index(request):
|
||||
@ -17,27 +16,23 @@ def index(request):
|
||||
@login_required(login_url="login/")
|
||||
@permission_required("fossdb.add_post", login_url="login/", raise_exception=True)
|
||||
def add_project(request):
|
||||
ProgrammingLanguageFormSet = formset_factory(ProjectProgrammingLanguageForm, extra=1)
|
||||
if request.method == "POST":
|
||||
project_form = ProjectForm(request.POST)
|
||||
language_formset = ProgrammingLanguageFormSet(request.POST)
|
||||
language_formset = ProjectProgrammingLanguageFormSet(request.POST, instance=Project())
|
||||
|
||||
if project_form.is_valid() and language_formset.is_valid():
|
||||
project = project_form.save(commit=False)
|
||||
project.author = request.user
|
||||
project.save()
|
||||
|
||||
for language_form in language_formset:
|
||||
if language_formset.is_valid():
|
||||
language = language_form.save(commit=False)
|
||||
language.project = project
|
||||
language.save()
|
||||
language_formset.instance = project
|
||||
language_formset.save()
|
||||
|
||||
project_form.save_m2m()
|
||||
return redirect("/")
|
||||
else:
|
||||
project_form = ProjectForm()
|
||||
language_formset = ProgrammingLanguageFormSet()
|
||||
language_formset = ProjectProgrammingLanguageFormSet()
|
||||
|
||||
context = {
|
||||
"title": "Add project",
|
||||
|
||||
Loading…
Reference in New Issue
Block a user