Модель поля, содержащего только год или полную дату, с помощью Django
как я могу получить ModelField, в котором я бы один раз добавил полную дату в формате "2016-07-04" и один раз только год, например 1997, так чтобы у меня было два элемента один только с годом, а другой с полной датой, и затем я мог бы сортировать их по году?
Для сортировки и фильтрации по году вы также можете использовать поле date
непосредственно; для фильтрации вы используете __year
, как .filter(date__year=1234)
, а при сортировке по дате экземпляры сортируются (очевидно) по году.
Но если это не решит вашу ситуацию, вы также можете добавить IntegerField
(или PositiveIntegerField
) к вашей модели, где вы вводите только год. Например:
class Document(models.Model):
...
year = models.PositiveIntegerField()
date = models.DateField()
...