Django-rss
提供:Dev Guides
Django-RSS
Djangoには、シンジケーションフィード生成フレームワークが付属しています。 これを使用すると、 _ django.contrib.syndication.views.Feed class_ をサブクラス化するだけでRSSまたはAtomフィードを作成できます。
アプリで行われた最新のコメントのフィードを作成しましょう(Django-Comments Frameworkの章も参照)。 このために、myapp/feeds.pyを作成してフィードを定義しましょう(コード構造内の任意の場所にフィードクラスを配置できます)。
- フィードクラスでは、 title 、 link 、および description 属性は、標準のRSS <title> 、 <link> および <description> 要素に対応しています。
- items メソッドは、項目要素としてフィードに入れる要素を返します。 私たちの場合、最後の5つのコメント。
- item_title メソッドは、フィードアイテムのタイトルとして使用するものを取得します。 この場合、タイトルはユーザー名になります。
- item_description メソッドは、フィードアイテムの説明として使用するものを取得します。 私たちの場合、コメント自体。
- item_link メソッドは、完全なアイテムへのリンクを作成します。 私たちの場合、それはあなたをコメントに導きます。
フィードができたので、views.pyにコメントビューを追加してコメントを表示しましょう-
また、マッピングのためにmyapp urls.pyにいくつかのURLが必要です-
/myapp/latest/comments/にアクセスすると、フィードが取得されます-
次に、ユーザー名のいずれかをクリックすると、前にコメントビューで定義された/myapp/comment/comment_idが表示されます。
したがって、RSSフィードの定義は、Feedクラスをサブクラス化し、URL(フィードへのアクセス用とフィード要素へのアクセス用)を定義するだけです。 コメントと同様に、これはアプリのどのモデルにも添付できます。