2016-05-22 11 views
2

私のページネームURLをdjangoからSEOに少しフレンドリーにしようとしています。 ?page=current_pageの代わりに、形式/page/current_pageの何か。Django:ページネーションのURLをSEOフレンドリーにする

url(r'^(?P<slug>[a-zA-Z0-9-_]+)/page/(?P<page>[0-9])+$', GalleryDetail.as_view(), name='galleries-view-gallery-paginator') 

と私のapp/templates/app/my_view.html上:

{% if page_obj.has_next %}  
    <a href="{% url 'galleries-view-gallery-paginator' page_obj.next_page_number %}">next</a> 
{% endif %} 

しかし、私はNoReverseMatchエラーを取得

は、だから私の app/urls.pyに私は次のようでした。

その他のエラー情報:Reverse for 'galleries-view-gallery-paginator' with arguments '(2,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['gallery/(?P<slug>[a-zA-Z0-9-_]+)/page/(?P<page>[0-9])+$']

、よく。 /page/current_pageのようなURLをDjangoでどうやって達成できますか?

+0

Sighhh!それは今働く!たくさんのあなたに感謝します。あなたが答えを投稿するなら、私はそれを受け入れます! :-) – gglasses

+0

@ozgurスラッグ値= gallery.slugもしあなたがそれを意味するならば。私はちょうどそれを解決した: '{%url 'gallery-view-gallery-paginator' gallery.slug page_obj.next_page_number%}' :-) – gglasses

答えて

2

URL galleries-view-gallery-paginatorでは、2つのパラメータ:slugpageを渡す必要があります。ページ番号だけを渡すので、スラッグも必要です。

{% url 'galleries-view-gallery-paginator' gallery.slug page_obj.next_page_number %} 
関連する問題