Я пробую основанные на классах представления Джанго, и мне они пока нравятся, но я не могу заставить YearArchiveView дать мне что-нибудь.Вот мой класс:
class ThoughtsByYearView(YearArchiveView):
template_name = "thoughts/index_by_year.html"
queryset = Thought.objects.published()
date_field = 'pub_date'
context_object_name = 'thought_list'
и мои urls.py:
urlpatterns = patterns('thoughts.views',
url(r'^$', ThoughtsIndexView.as_view(), name='thoughts'),
url(r'^(?P<year>\d{4})/$', ThoughtsByYearView.as_view(), name='thoughts_year'),
)
оба thought_list
и object_list
возвращаются как пустые списки.Переопределение get_queryset
также ни к чему не приведет.ThoughtsIndexView
возвращает правильные объекты, поэтому я уверен, что это просто глупая ошибка, которую я совершаю.Может кто-нибудь сказать мне, что это такое?
О, и вот контрольный пример, который не проходит: (правка: результат в браузере тот же. Нет возврата)
def test_thoughts_by_year_has_thoughts(self):
response = self.client.get(reverse('thoughts_year', args=[datetime.now().year]))
thoughts_by_year = response.context_data['thought_list']
self.assertGreater(len(thoughts_by_year), 0)