2011-01-22 6 views
4

が、私は私のブログのエントリを表す単純な「ポスト」のモデルがあります:ジャンゴとはget_absolute_url

def index_view(request): 
    published_posts = Post.objects.all()  
    paginator = Paginator(published_posts, 10) 
    try: 
     page = int(request.GET.get('page', '1')) 
    except ValueError: 
     page = 1 
    try: 
     post_list = paginator.page(page) 
    except (EmptyPage, InvalidPage): 
     post_list = paginator.page(paginator.num_pages) 

    return render_to_response('devblog_index.html', {"post_list": post_list}) 
:私のブログのインデックスで

class Post(models.Model): 
    title = models.CharField('title', max_length=200) 
    slug = models.SlugField('slug', unique_for_date='creation_time') 
    creation_time = models.DateTimeField('creation time', auto_now_add=True) 
    content = models.TextField('content') 

    @permalink 
    def get_absolute_url(self): 
     return ('devblog_post_url',(), { 
      'year': self.creation_time.year, 
      'month': self.creation_time.month, 
      'day': self.creation_time.day, 
      'slug': self.slug})    

を、私はこのビューでこれらの記事をページ分割したいです

{% for post in post_list.object_list %} 
    <a href="/{{ post.get_absolute_url }}/">{{ post.title }}</a><br /> 
{% endfor %} 

そして今、ここでは、私がdevblog_index.htmlテンプレートでポストについてはget_absolute_urlメソッドを呼び出した後、私は空白のURLを取得し、問題となっています3210

編集:私はシンプル、django.conf.urls.defaultsから

インポート*

urlpatterns = patterns('', 
    url(r'^$', 
     view='devblog.views.index_view', 
     name='devblog_index' 
    ), 
    url(r'^(?P<year>\d{4})/(?P<month>\w{1,2)/(?P<day>\d{1,2})/(?P<slug>[-\w]+)/$', 
     view='devblog.views.post_view', name='devblog_post_url' 
    ) 
) 

メインurls.pyで:ここで

は自分のアプリケーションのための私urls.pyです(r'^blog/', include('devblog.urls'))

ここで、この空白の文字列のURLに問題がありますか?

よろしく

答えて

5

変更(?P<month>\d{1,2})から(?P<month>\w{1,2)