📅  最后修改于: 2023-12-03 14:40:47.944000             🧑  作者: Mango
Django-RSS is a Django app that allows you to easily generate RSS feeds for your Django site. It provides a simple API to generate feeds from any database query.
To install Django-RSS, simply run:
pip install django-rss
Then, add 'django.contrib.syndication'
and 'django_rss'
to your INSTALLED_APPS
setting:
INSTALLED_APPS = [
...
'django.contrib.syndication',
'django_rss',
...
]
To use Django-RSS, first define a subclass of django.contrib.syndication.views.Feed
with your desired feed configuration:
from django.contrib.syndication.views import Feed
from django.urls import reverse
from .models import MyModel
class MyFeed(Feed):
title = "My Site RSS Feed"
link = "/rss/"
description = "Updates on my site."
def items(self):
return MyModel.objects.all()
def item_title(self, item):
return item.title
def item_description(self, item):
return item.description
def item_link(self, item):
return reverse('my_detail_page', args=[item.pk])
This example generates an RSS feed with the title "My Site RSS Feed", a link of /rss/
, and a description "Updates on my site". The items()
method returns all instances of MyModel
in the database, while the item_title()
, item_description()
, and item_link()
methods define the title, description, and link for each item in the feed.
To serve the feed, add a URL pattern for it in your urls.py
:
from django.urls import path
from .views import MyFeed
urlpatterns = [
path('rss/', MyFeed(), name='my_feed'),
]
Now, visiting /rss/
in your web browser will display the RSS feed.
Django-RSS provides a simple way to generate RSS feeds for your Django site. With just a few lines of code, you can generate RSS feeds that provide updates on your site's content.