Проблемы с Django RSS Feed

Я работаю над приложением для блогов и пытаюсь создать простую функцию системы RSS-каналов. Тем не менее, я сталкиваюсь с странной ошибкой, которая не имеет большого смысла для меня. Я понимаю, что, вероятно, происходит, но я не понимаю, почему. Мой RSS-канал ниже:

class RSSFeed(Feed):
    title = settings.BLOG_NAME
    description = "Recent Posts"
    def items(self):
        return Story.objects.all().order_by('-created')[:10]

    def link(self, obj):
        return obj.get_absolute_url()

Однако я получил следующую ошибку (трассировка полного стека на http://dpaste.com/82510/):

AttributeError: 'NoneType' object has no attribute 'startswith'

Это заставляет меня верить, что он не получает никаких объектов вообще. Тем не менее, я могу перейти в оболочку и получить эти объекты Story, и я могу перебирать их, возвращая абсолютный URL без каких-либо проблем. Так что может показаться, что обе части Feed работают, но только не в форме Feed. Кроме того, я добавил некоторые записи и могу подтвердить, что функция элементов никогда не включается при посещении ссылки на каналы. Я надеюсь, что я просто пропускаю что-то простое. Заранее спасибо за любую помощь.

2 ответа

Изменение на:

class RSSFeed(Feed):
    title = settings.BLOG_NAME
    link = "/blog/"
    description = "Recent Posts"

    def items(self):
        return Story.objects.all().order_by('-created')[:10]

Починил это. Не уверен, что я полностью понимаю это.. но whatev.:)

Вы определили

def get_absolute_url(self):

в модели?

также приятно

if not obj:
    raise FeedDoesNotExist

чтобы избежать ошибок, когда нет результата кормления

Другие вопросы по тегам