Модель поля, содержащего только год или полную дату, с помощью Django

как я могу получить ModelField, в котором я бы один раз добавил полную дату в формате "2016-07-04" и один раз только год, например 1997, так чтобы у меня было два элемента один только с годом, а другой с полной датой, и затем я мог бы сортировать их по году?

Для сортировки и фильтрации по году вы также можете использовать поле date непосредственно; для фильтрации вы используете __year, как .filter(date__year=1234), а при сортировке по дате экземпляры сортируются (очевидно) по году.

Но если это не решит вашу ситуацию, вы также можете добавить IntegerField (или PositiveIntegerField) к вашей модели, где вы вводите только год. Например:

class Document(models.Model):
    ...
    year = models.PositiveIntegerField()
    date = models.DateField()
    ...
Вернуться на верх