This commit is contained in:
Gregory Trullemans 2023-05-16 12:58:11 +02:00
parent e94cee695b
commit b02bf29f79
3 changed files with 13 additions and 18 deletions

View File

@ -17,7 +17,7 @@ class SkillForm(forms.ModelForm):
} }
class RoutineForm(forms.ModelForm): class CombinationForm(forms.ModelForm):
class Meta: class Meta:
model = Routine model = Routine
fields = ( fields = (
@ -47,7 +47,7 @@ class RoutineForm(forms.ModelForm):
} }
class RoutineSkillForm(forms.ModelForm): class CombinationSkillForm(forms.ModelForm):
class Meta: class Meta:
model = RoutineSkill model = RoutineSkill
fields = ( fields = (

View File

@ -1,18 +1,14 @@
{% extends "base.html" %} {% extends "base.html" %}
<!-- {% block page_title %}.: New Routine :.{% endblock %} -->
<!-- {% block title %}Routine{% endblock %} -->
{% block content %} {% block content %}
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-12 col-sm-12 col-md-8 col-lg-7 col-xl-6"> <div class="col-12 col-sm-12 col-md-8 col-lg-7 col-xl-6">
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">
<h4 class="">{% if routine_id %}Edit{% else %}Add{% endif %} Routine</h4> <h4 class="">{% if combination_id %}Edit{% else %}Add{% endif %} Combination</h4>
</div> </div>
<div class="card-body"> <div class="card-body">
<form action="{% if routine_id %}{% url 'combination_update' routine_id %}{% else %}{% url 'combination_create' %}{% endif %}" method="post" class="form-horizontal" id="formulaire" name="formulaire"> <form action="{% if combination_id %}{% url 'combination_update' combination_id %}{% else %}{% url 'combination_create' %}{% endif %}" method="post" class="form-horizontal" id="formulaire" name="formulaire">
{% csrf_token %} {% csrf_token %}
{% for hidden in form.hidden_fields %} {% for hidden in form.hidden_fields %}
{{ hidden }} {{ hidden }}

View File

@ -9,8 +9,8 @@ from jarvis.people.models import Gymnast
from .forms import ( from .forms import (
SkillForm, SkillForm,
RoutineForm, CombinationForm,
RoutineSkillForm, CombinationSkillForm,
) )
from .models import ( from .models import (
Skill, Skill,
@ -367,28 +367,27 @@ def combination_create_or_update(request, combination_id=None):
Args: Args:
combination_id (int) identifiant d'un object de classe <routine>. combination_id (int) identifiant d'un object de classe <routine>.
""" """
if combination_id: if combination_id:
routine = get_object_or_404(Routine, pk=combination_id) combination = get_object_or_404(Routine, pk=combination_id)
else: else:
routine = None combination = None
if request.method == "POST": if request.method == "POST":
form = RoutineForm(request.POST, instance=routine) form = CombinationForm(request.POST, instance=combination)
if form.is_valid(): if form.is_valid():
routine = form.save() combination = form.save()
# ici faire un FOR skill in form_skills_list: # ici faire un FOR skill in form_skills_list:
# record.save() # ca sauve le record dans la table RoutineSkill # record.save() # ca sauve le record dans la table RoutineSkill
# something like this : http://stackoverflow.com/questions/3074938/django-m2m-form-save-through-table # something like this : http://stackoverflow.com/questions/3074938/django-m2m-form-save-through-table
# QTF : can you help me ? # QTF : can you help me ?
return HttpResponseRedirect( return HttpResponseRedirect(
reverse("combination_details", args=(routine.pk,)) reverse("combination_details", args=(combination.pk,))
) )
else: else:
return render(request, "combinations/create.html", {"form": form}) return render(request, "combinations/create.html", {"form": form})
form = RoutineForm(instance=routine) form = CombinationForm(instance=combination)
context = {"form": form, "combination_id": combination_id} context = {"form": form, "combination_id": combination_id}
return render(request, "combinations/create.html", context) return render(request, "combinations/create.html", context)
@ -428,7 +427,7 @@ def link_skill_to_combination(request):
"skill": get_object_or_404(Skill, pk=request.POST.get("skill_id", 0)), "skill": get_object_or_404(Skill, pk=request.POST.get("skill_id", 0)),
"rank": request.POST.get("rank", 0), "rank": request.POST.get("rank", 0),
} }
form = RoutineSkillForm(data) form = CombinationSkillForm(data)
if form.is_valid(): if form.is_valid():
link, created = RoutineSkill.objects.get_or_create( link, created = RoutineSkill.objects.get_or_create(