Opened 7 years ago
Last modified 7 years ago
#29325 closed Bug
Django docs Polls App,Diferent queryset returns same object values but QuestionIndexViewTests works for one query and fails for other — at Initial Version
Reported by: | hgamit | Owned by: | nobody |
---|---|---|---|
Component: | Generic views | Version: | 2.0 |
Severity: | Normal | Keywords: | polls, model, tests |
Cc: | hgamit | Triage Stage: | Unreviewed |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
In polls application I added annotation to check one to many relationship between Question and Choice models such that, Index only return questions with more than one choices to be displayed but my testcase fails all the time with annotation where both query returns same data.
views.py (Not Working: Added annotate(num = Count('choice')).filter(numgt=1))
class IndexView(generic.ListView):
template_name = 'polls/index.html'
context_object_name = 'latest_question_list'
def get_queryset(self):
"""Return the last five published questions."""
return Question.objects.annotate(num = Count('choice')).filter(numgt=1).filter(pub_lte=timezone.now()).order_by('-pub_date')[:5]
Error:
Traceback (most recent call last): File "C:\Users\hmnsh\repos\DjangoApp\mysite\polls\tests.py", line 80, in test_past_question [] File "C:\ProgramData\Anaconda3\envs\django\lib\site-packages\django\test\testcases.py", line 940, in assertQuerysetEqual return self.assertEqual(list(items), values, msg=msg) AssertionError: Lists differ: [] != []