2009-04-18 3 views
1

Я пытаюсь использовать файлы Sitemap Django.Приоритетная проблема в файлах Sitemap

class BlogSiteMap(Sitemap): 
    """A simple class to get sitemaps for blog""" 

    changefreq = 'hourly' 
    priority = 0.5 

    def items(self): 
     return Blog.objects.order_by('-pubDate') 

    def lastmod(self, obj): 
     return obj.pubDate 

Моя проблема is..I хотел установить приоритет первого объекта 3 блога, как 1,0 и остальные из них как 0,5 приоритет.

Я прочитал documentation, но не смог выйти из него.

Любая помощь будет заметна. Заранее спасибо.

ответ

1

Я думаю, вы можете изменить каждый объект с его приоритетом. Как, что, например:

def items(self): 
    for i, obj in enumerate(Blog.objects.order_by('-pubDate')): 
     obj.priority = i < 3 and 1 or 0.5 
     yield obj 

def priority(self, obj): 
    return obj.priority 
0

Нечто подобное может работать:

def priority(self, obj): 
    if obj.id in list(Blog.objects.all()[:3].values_list('id')) 
     return 1.0 
    else: 
     return 0.5 
Смежные вопросы