Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Django Basics Final Details Step Detail View

Django Basics Article Detail View Challenge, Task 3/3

I've tried everything I can think of to get task 3/3 to pass. You're supposed to throw a 404 if the event of a bad article PK. It seems like either of these should pass:

 from django.shortcuts import get_object_or_404

def article_detail(request, pk):
    article = Article.objects.get(pk=pk)
    article = get_object_or_404(Article, pk=pk)
    return render(request, 'articles/article_detail.html',{'article': article})

def article_detail(request, pk):
    article = get_object_or_404(Article, pk=pk)
    return render(request, 'articles/article_detail.html',{'article': article})

But neither do. I'm really confused. Please help.

Thanks.

Guess I should have included the urls.py:

from django.conf.urls import url

from . import views

urlpatterns = [
    url(r'article/(?P<pk>\d+)/$', views.article_detail),
    url(r'writer/(?P<pk>\d+)/$', views.writer_detail),
    url(r'', views.article_list),
]    

Thanks again.

1 Answer

Christopher Shaw
seal-mask
PLUS
.a{fill-rule:evenodd;}techdegree seal-36
Christopher Shaw
Python Web Development Techdegree Graduate 58,248 Points

Your imports is missing render

from django.shortcuts import get_object_or_404, render

Then this will work:

def article_detail(request, pk):
    article = get_object_or_404(Article, pk=pk)
    return render(request, 'articles/article_detail.html', {'article': article})

i included all ,, this one (the one in cluding get_object_or_404) and the old one ....still give me a error