Update skill details : verification and correction of fields
continuous-integration/drone/push Build is failing
Details
continuous-integration/drone/push Build is failing
Details
This commit is contained in:
parent
16f0de6278
commit
98d64fbb49
|
@ -67,13 +67,31 @@ def skill_listing(request, field=None, expression=None, value=None, level=None):
|
||||||
def skill_details(request, skillid):
|
def skill_details(request, skillid):
|
||||||
"""
|
"""
|
||||||
Récupère toutes les informations d'un skill.
|
Récupère toutes les informations d'un skill.
|
||||||
|
La méthode en profite pour vérifier les champs level, rank, age_boy et age_girl par rapport aux pré-requis.
|
||||||
|
|
||||||
:param skillig: id d'un `skill`
|
:param skillig: id d'un `skill`
|
||||||
:type skillid: int
|
:type skillid: int
|
||||||
|
|
||||||
:return: skill
|
:return: skill
|
||||||
"""
|
"""
|
||||||
context = {"skill": get_object_or_404(Skill, pk=skillid)}
|
skill = get_object_or_404(Skill, pk=skillid)
|
||||||
|
|
||||||
|
for prerequisite in skill.prerequisites.all():
|
||||||
|
if prerequisite.level >= skill.level:
|
||||||
|
skill.level = prerequisite.level + 1
|
||||||
|
|
||||||
|
if prerequisite.rank >= skill.rank:
|
||||||
|
skill.rank = prerequisite.rank + 1
|
||||||
|
|
||||||
|
if prerequisite.age_boy > skill.age_boy:
|
||||||
|
skill.age_boy = prerequisite.age_boy
|
||||||
|
|
||||||
|
if prerequisite.age_girl > skill.age_girl:
|
||||||
|
skill.age_girl = prerequisite.age_girl
|
||||||
|
|
||||||
|
skill.save()
|
||||||
|
|
||||||
|
context = {"skill": skill}
|
||||||
return render(request, "objectives/skills/details.html", context)
|
return render(request, "objectives/skills/details.html", context)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue