J'ai joué avec Django pendant quelques jours et je suis tombé sur le problème suivant. Je les modèles suivants:Validation simple Django avec plusieurs paramètres problème
Employee = (id, employeeName)
Project = (id, projectName)
Assignment = (fk_employee, fk_project, from_date, to_date)
Ce que je veux faire est de créer un validateur qui ne permettra pas à des périodes d'affectation à se chevaucher. L'algorithme est très simple, mais je ne sais pas comment le configurer correctement en utilisant des validateurs.
Ce que je pensais est d'avoir quelque chose comme:
class Assignment(models.Model):
...
from_date = models.DateField(
validators=[DateInRangeValidator(%theFromDateValue%, %aReferenceToTheEmployee%)])
to_date = models.DateField(
validators=[DateInRangeValidator(%theToDateValue%, %aReferenceToTheEmployee%)])
def DateInRangeValidator(dateValue, employee):
...
BTW, je l'ai écrit ces% theDateValue% et% aReferenceToTheEmployee% parce que je ne sais pas comment envoyer ces paramètres. Serait-ce «soi-même», «from_date» ou autre chose?
Alors, je suis proche de la solution? Merci d'avance! :)
Merci d'avoir répondu :) Selon la documentation, cela semble être la solution. Je vais jouer avec pendant un moment et je posterai plus tard. –