Если у меня есть поле даты в модели django, как я могу получить все возможные значения месяцев из объектов модели? поэтому, если у меня есть объект1 с датой = 22.01.2013 и объект2 с датой = 23.05.2013, мне нужно получить список месяцев [01, 05] или [1, 5]
Получить месяцы из поля даты в django
Ответы (2)
Сделать это можно так:
months = [i.month for i in MyModel.objects.values_list('date', flat=True)]
person
Aamir Adnan
schedule
23.08.2013
Спасибо, это то, что мне нужно!
- person user1931780; 23.08.2013
Привет, я думаю, что функция дат - это то, что вы ищете:
Пытаться:
month_list = Model.objects.dates('DateField', 'month')
person
inferno
schedule
23.08.2013
Это должно быть
Model.objects.dates
, и это вернет qs, которое оценивает список объектов даты python, а не номера месяцев. Но это лучший способ сделать это, чем принятый ответ, который менее эффективен и будет включать дубликаты. Конечно, легко получить номера месяцев из объектов даты.
- person Peter DeGlopper; 23.08.2013
О, спасибо, забудьте об атрибуте объектов. Отредактировано в ответе :)
- person inferno; 24.08.2013