Move views and add feeds
This commit is contained in:
parent
9a50fa408f
commit
17d2e7aa2e
6 changed files with 36 additions and 5 deletions
|
@ -5,6 +5,7 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<title>Gab's Notes</title>
|
<title>Gab's Notes</title>
|
||||||
<link rel="stylesheet" href="{% static 'style.css' %}" type="text/css">
|
<link rel="stylesheet" href="{% static 'style.css' %}" type="text/css">
|
||||||
|
<link rel="alternate" type="application/rss+xml" title="Gab's Notes » Feed" href="https://gabnotes.org/feed/">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<nav>
|
<nav>
|
||||||
|
|
0
articles/views/__init__.py
Normal file
0
articles/views/__init__.py
Normal file
24
articles/views/feeds.py
Normal file
24
articles/views/feeds.py
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
from django.contrib.syndication.views import Feed
|
||||||
|
|
||||||
|
from articles.models import Article
|
||||||
|
from blog import settings
|
||||||
|
|
||||||
|
|
||||||
|
class CompleteFeed(Feed):
|
||||||
|
title = "Gab's Notes"
|
||||||
|
link = settings.BLOG["base_url"]
|
||||||
|
description = settings.BLOG["description"]
|
||||||
|
|
||||||
|
def items(self):
|
||||||
|
return Article.objects.filter(status=Article.PUBLISHED).order_by(
|
||||||
|
"-published_at"
|
||||||
|
)[:15]
|
||||||
|
|
||||||
|
def item_title(self, item: Article):
|
||||||
|
return item.title
|
||||||
|
|
||||||
|
def item_description(self, item: Article):
|
||||||
|
return item.get_formatted_content()
|
||||||
|
|
||||||
|
def item_pubdate(self, item: Article):
|
||||||
|
return item.published_at
|
|
@ -115,3 +115,8 @@ USE_TZ = True
|
||||||
STATIC_URL = "/static/"
|
STATIC_URL = "/static/"
|
||||||
|
|
||||||
AUTH_USER_MODEL = "articles.User"
|
AUTH_USER_MODEL = "articles.User"
|
||||||
|
|
||||||
|
BLOG = {
|
||||||
|
"description": "My take on tech-related subjects (but not only)",
|
||||||
|
"base_url": "https://gabnotes.org/",
|
||||||
|
}
|
||||||
|
|
|
@ -16,11 +16,12 @@ Including another URLconf
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
|
|
||||||
from articles import views
|
from articles.views import feeds, html
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path("admin/", admin.site.urls),
|
path("admin/", admin.site.urls),
|
||||||
path("", views.ArticlesListView.as_view(), name="articles-list"),
|
path("", html.ArticlesListView.as_view(), name="articles-list"),
|
||||||
path("drafts/", views.DraftsListView.as_view(), name="drafts-list"),
|
path("drafts/", html.DraftsListView.as_view(), name="drafts-list"),
|
||||||
path("<int:pk>", views.ArticleDetailView.as_view(), name="article-detail"),
|
path("<int:pk>", html.ArticleDetailView.as_view(), name="article-detail"),
|
||||||
|
path("feed/", feeds.CompleteFeed(), name="complete-feed"),
|
||||||
]
|
]
|
||||||
|
|
Reference in a new issue