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 Class-based Views Classy Views List and Detail

In article_detail, replace the text instructions with their object complements. For the author, just print the author at

In article_detail, replace the text instructions with their object complements. For the author, just print the author attribute. Use the |linebreaks filter on the body.

help me on this one cant get the instruction

articles/urls.py
from django.conf.urls import url

from . import views

urlpatterns = [url(r'^$', views.ArticleList.as_view(), name= 'list'),
               url(r'^(?P<pk>\d+)/$', views.ArticleDetail.as_view(), name ='detail'),

]
articles/views.py
from django.views.generic import ListView, DetailView

from . import models

class ArticleList(ListView):
    model = models.Article


class ArticleDetail(DetailView):
    model = models.Article
articles/templates/articles/article_list.html
<h1>Articles</h1>

<ul>
  {% for article in Article %}
  <li> title </li>
  {% endfor %}
</ul>
articles/templates/articles/article_detail.html
<h1>{{ ArticleDetail.title }}</h1>
<p>{{ ArticleDetail.author }}</p>
<body>
    {{ ArticleDetail.body|linebreaks }}
</body>

1 Answer

Chris Freeman
MOD
Chris Freeman
Treehouse Moderator 68,423 Points

You have the correct idea. It is the references that need correcting

  • Use article.title instead of ArticleDetail.title
  • Use article.author instead of ArticleDetail.author
  • Use article.body|linebreaks instead of ArticleDetail.body|linebreaks
  • Use for article in artical_list instead of for article in Article

EDIT: as caught by Tom Nguyen

  • For article_list.html: Use {{ article }} instead of title

Post back if you need more help. Good luck!!

Tom Nguyen
Tom Nguyen
33,500 Points

For article_list.html: Use {{ article }} instead of title