Выберите разные годы и месяцы на странице архива Django

Все объекты гарантированно имеют метод .equals(), поскольку Object содержит метод, .equals(), который возвращает логическое значение. Задача подкласса переопределять этот метод, если требуется дополнительное определение определения. Без него (т. Е. Используя ==) только адреса памяти проверяются между двумя объектами для равенства. String переопределяет этот метод .equals() и вместо использования адреса памяти возвращает сравнение строк на уровне символа для равенства.

Ключевое замечание состоит в том, что строки хранятся в одном пуле, поэтому после создания строки он всегда хранится в программе по тому же адресу. Строки не меняются, они неизменяемы. Вот почему это плохая идея использовать регулярную конкатенацию строк, если у вас есть серьезное количество обработки строк. Вместо этого вы будете использовать предоставленные классы StringBuilder. Помните, что указатели на эту строку могут измениться, и если вам было интересно увидеть, были ли два указателя одинаковыми ==, это был бы прекрасный способ. Строки сами не делают.

11
задан Apreche 24 March 2009 в 19:37
поделиться

3 ответа

Это даст Вам список уникальных дат регистрации:

Posts.objects.filter(draft=False).dates('post_date','month',order='DESC')

Конечно, Вы, возможно, не нуждались бы в черновом фильтре и изменили бы 'post_date' на Ваше имя поля и т.д.

37
ответ дан 3 December 2019 в 00:59
поделиться

Я нашел ответ на свой собственный вопрос.

Это находится на этой странице в документации.

Существует функция, вызванная даты, которые дадут Вам отличные даты. Таким образом, я могу сделать

Entry.objects.dates ('pub_date', 'месяц') для получения списка объектов даты и времени, один в течение каждого года/месяц.

12
ответ дан 3 December 2019 в 00:59
поделиться

Необходимо смочь получить всю информацию, которую Вы описываете от встроенных представлений. Можно ли быть более конкретными относительно того, что Вы не можете получить? Это должно иметь все, в чем Вы нуждаетесь:

django.views.generic.date_based.archive_month

Ссылочная страница (ищут вышеупомянутую строку на той странице),

1
ответ дан 3 December 2019 в 00:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: