my test below returns a response 404. If I replace the 'party:detail' by '/party/party/1' , now it will pass. Per the documentation, I do pass the parameters correctly, so what is causing the issue?
class UrlTests(TestCase):
def test_login_client(self):
User.objects.create_user('buddy', 'me@me.com', 'password')
self.client.login(username='buddy', password='password')
response = self.client.get(reverse('party:detail', kwargs={'pk': '1'}))
self.assertEqual(301, response.status_code)
demo\urls
urlpatterns = [
url(r'^party/', include('party.urls', namespace='party')), ]
party\urls
urlpatterns = [
url(r'^party/(?P<pk>[0-9]+)/$', login_required(PartyView.as_view()), name='detail'), ]
party\views
class PartyView(generic.DetailView):
model = Party
template_name = 'party/party.html'
def get_queryset(self):
return Party.objects.filter(pk=self.kwargs['pk'])