2017-08-16 9 views
0

私はDjangoプロジェクトを持っていますが、静的URL(モデルなし)用のサイトマップを作成しようとしています。 python manage.py runserverを実行し、http://127.0.0.1:8000/sitemap.xmlに行くときしかし、私はそれが空を取得:sitemap.xmlはDjangoの静的URLのために空です

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"></urlset> 

私のコードは次のようになります。

#urls.py 
from main_app.sitemaps import StaticSitemap 

sitemaps = { 
    'static': StaticSitemap(), 
} 

urlpatterns = [ 
    ... 
    url(r'^sitemap\.xml$', sitemap, {'sitemaps': sitemaps}), 
    ... 
] 
urlpatterns += i18n_patterns(
... 
) 

#sitemaps.py 
from django.contrib.sitemaps import Sitemap 
from django.urls import reverse 

class StaticSitemap(Sitemap): 
    priority = 0.5 
    changefreq = 'weekly' 
    i18n = True 

    def location(self, item): 
     return reverse(item) 

documentation

Modelsとの一例を示していますそれは関数 itemsを変更します。しかし、私は持っていないので、私はそこに何かがないかどうか分からない。

私は間違っていますか?

答えて

0

私はちょうど問題が何かを知った。

とにかく関数itemsを定義する必要があるようです。

def items(self): 
    list_of_url_names = ['home', 'about', ..., 'contact'] 
    return list_of_url_names 

さらにsitemap.xmlはもう空ではありません。

関連する問題