2013-11-18 2 views
0

Надеюсь, кто-то может помочь мне в этом. Я создал базовую RSS-ленту, используя сеть фидов синдикации django. Основной канал работает хорошо, однако по умолчанию django устанавливает GUID (уникальный идентификатор) в качестве ссылки на сайт. Я хотел бы, чтобы GUID был item.id.Django syndication RSS feed_guid не работает

Я использовал следующий Джанго пример, который работает:

from django.contrib.syndication.views import Feed 
from django.core.urlresolvers import reverse 
from policebeat.models import NewsItem 

class LatestEntriesFeed(Feed): 
    title = "Police beat site news" 
    link = "/sitenews/" 
    description = "Updates on changes and additions to police beat central." 

    def items(self): 
     return NewsItem.objects.order_by('-pub_date')[:5] 

    def item_title(self, item): 
     return item.title 

    def item_description(self, item): 
     return item.description 

В разделе Джанго документы он гласит следующее:

# GUID -- One of the following three is optional. The framework looks 
# for them in this order. This property is only used for Atom feeds 
# (where it is the feed-level ID element). If not provided, the feed 
# link is used as the ID. 

def feed_guid(self, obj): 
    """ 
    Takes the object returned by get_object() and returns the globally 
    unique ID for the feed as a normal Python string. 
    """ 

def feed_guid(self): 
    """ 
    Returns the feed's globally unique ID as a normal Python string. 

Но когда я добавить следующее в мой код я получаю ' Объект NoneType 'не имеет атрибута' id ':

def feed_guid(self, item): 
     return item.id 

Уверен, что я неправильно понял это, но может ли кто-нибудь помочь?

ответ

0

В интересах кого-либо еще, пытающегося использовать item.id как руководство. Просмотрев код django, я нашел ответ на свою проблему.

Хотя состояние Джанго Документов

def feed_guid(self, item): 
     return item 

я использовал следующее, который работал:

def item_guid(self, item) 
     return item 

идентификатор GUID корма RSS теперь идентификатор элемента.

Смежные вопросы