我试图在我的tests.py中创建一个测试
class TaskViewTests(TestCase):
def test_task_view_with_no_task(self):
"""
If no task exist, an appropriate message should be displayed.
"""
userName = 'esutek'
response = self.client.get(reverse('actuser:task',args=(userName,)))
self.assertEqual(response.status_code, 200)
self.assertContains(response, "No task are available.")
self.assertQuerysetEqual(response.context['taskList'], [])然而,它给了我这个错误消息。我不知道为什么会发生这种事。我只是按照教程做的。
actuser:任务views.py
def task(request, userName):
""" User task list in actInbox
"""
user = ActuserViewModel()
user.get_task_list(userName)
return render(request, 'actuser/task.html', {
'userName': userName,
'taskList': user.taskList,
'dateToday': user.dateToday,
})viewmodels.py
def get_task_list(self, userName):
self.taskList = Task.objects.filter(executor = userName, parent_task_id=EMPTY_UUID).order_by('due_date')
#get date now with this format 05/11
self.dateToday = datetime.date.today()实际上我有两个网址..。
这是这个项目的
url(r'^(?P<userName>[0-9a-zA-Z--]+)/', include('actuser.urls', namespace="actuser")),这个是来自actuser.urls的
url(r'^task/$', views.task, name='task'),发布于 2015-10-22 06:58:09
HTTP 302意味着您被重定向到其他URL。例如,如果您使用RedirectView,或者如果您忘记在请求URL的末尾写斜杠,并且启用了斜杠 (在这种情况下,您得到的是HTTP301而不是302),您可以有意地重定向。
你需要在结尾处划一个斜线:
url(r'^(?P<userName>[0-9a-zA-Z-]+)/task/$', ...发布于 2019-11-01 06:32:34
如果视图需要登录,则可能会得到重定向。
您需要先登录,这是一个很好的例子,说明了如何实现它:必填项
简要说明:
class LoginTestCase(TestCase):
def setUp(self):
self.client = Client()
self.user = User.objects.create_user('john', 'lennon@thebeatles.com', 'johnpassword')
def testLogin(self):
self.client.login(username='john', password='johnpassword')
response = self.client.get(reverse('testlogin-view'))
self.assertEqual(response.status_code, 200)https://stackoverflow.com/questions/33274874
复制相似问题