2011-04-28 4 views
1

저는 장고를 처음 사용하면서 실습 경험으로 기본 블로그를 만들려고합니다. WebMonkey에서 자습서를 따르고 있지만 날짜 기반 URL을 입력하면 내보기가 결과를 반환하지 않습니다.django date_based object_detail 문제

/blog/으로 가면 모든 블로그 항목의 목록을 얻을 수 있습니다. /blog/2011/04/24/으로 이동하면 템플릿이 정적 HTML을 벗어나지 만 루프가 결과를 생성하지 않습니다. 나는이 상황의 스크린 샷을 포함

class Entry(models.Model): 
    title = models.CharField(max_length=200) 

    slug = models.SlugField(
     unique_for_date='pub_date', 
     help_text='Automatically built from the title.' 
    ) 

    body_html = models.TextField(blank=True) 
    body_markdown = models.TextField() 
    pub_date = models.DateTimeField('Date published') 
    tags = TagField() 
    enable_comments = models.BooleanField(default=True) 

    PUB_STATUS = (
     (0, 'Draft'), 
     (1, 'Published'), 
    ) 
    status = models.IntegerField(choices=PUB_STATUS, default=0) 

: urls.py에서

내 URL 패턴은 list.htmlmodels.py에서

{% extends 'base.html' %} 

{% block pagetitle %}Page Title{% endblock %} 
{% block title %}Title: List{% endblock %} 
{% block primary %} 
    {% for object in latest %} 
     <h2>For Debug</h2> 
     <h2>{{ object.title }}</h2> 
     <p> {{ object.pub_date }} </p> 
     {{ object.body_html|truncatewords_html:"20"|safe }} 
     <p>tags:{% for tag in object.get_tags%} 
        <a href="/tags/{{tag.name|slugify}}/">{{tag}}</a> 
       {% endfor %} 
     </p> 
     <p> 
      <a href="/blog{{object.get_absolute_url}}">more...</a> 
     </p> 

    {% endfor %} 
{% endblock %} 

내 엔트리 모델이다

info_dict = { 
    'queryset': Entry.objects.filter(status=1), 
    'date_field': 'pub_date', 
} 

urlpatterns = patterns('django.views.generic.date_based', 
    (r'(blog/(?P<year>[0-9]{4}))/(?P<month>[a-z]{3})/(?P<day>[0-9]{1,2})/(?P<slug>[-\w]+)/$', 'object_detail', dict(info_dict, allow_future=True, slug_field='slug',template_name='blog/detail.html')), 

    (r'^((blog/(?P<year>[0-9]{4}))/(?P<month>[a-z]{3})/(?P<day>[0-9]{1,2})/(?P<slug>[-\w]+)/$', 'object_detail', dict(info_dict, allow_future=True, template_name='blog/list.html')), 

    (r'^blog/$','archive_index', dict(info_dict, allow_future=True, template_name='blog/list.html')), 

) 

내 템플릿입니다. 내 날짜 기반 URL이 결과를 반환하지 않는 이유는 무엇입니까? 블로그 항목의

전체 목록 : http://i.stack.imgur.com/GtiyR.png
날짜 별 검색 : http://i.stack.imgur.com/Bc8G0.png

답변

0

귀하의 날짜 기반의 URL이 object_detail보기보다는 archive_index을 의미합니다.

+0

빠른 응답을 보내 주셔서 감사합니다! 나는 archive_index로 바꿨지 만 여전히 행운은 없다 : ( (? P [0-9] {4})/(? P [az] {3})/(? P [0-9 ] {{012} {1,2})/{? [- \ w] +)/$ ','archive_index ', dict (info_dict, template_name ='blog/list.html ')), 이 URL을 사용해 보았습니다. 패턴을 사용하여 연도 기반 목록을 얻지 만 동일한 빈 결과를 얻습니다. ... (r '^ (? P [0-9] {4})/$', 'archive_year', dict (info_dict, allow_future = True , template_name = 'blog/list.html')), 아이디어가 있으십니까? – user544849