Django, как проверить год в зависимости от внешнего ключа другого класса - PullRequest
0 голосов
/ 20 апреля 2020

В Django моделях у меня есть два класса, и я хочу проверить класс. Комментарий Дата должна быть меньше или равна классу. Год отчета.

class Report(models.Model):
    year = models.PositiveIntegerField('year of report', default=date.today().year)

и другой класс:

class Comment():
    report = models.ForeignKey(Report, on_delete=models.CASCADE, related_name='comment')
    date = models.DateField('date', validators=[year_validation])

Как я могу сделать это? Я обнаружил что-то вроде пользовательских валидаторов. Я сделал функцию и использовал ее, но как я могу получить доступ ко второму классу здесь? Я хотел сделать что-то подобное, но это не работает.

def year_validation(self, value):
    if value.year > self.report.year:
        raise ValidationError('The year should be not later than: {}'.format(self.report.year))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...