From ea894e1ebf1ceb4dddf385b99587dcd5403c0c34 Mon Sep 17 00:00:00 2001 From: Colin Powell Date: Thu, 30 Nov 2023 17:54:28 +0100 Subject: [PATCH] Fix scrobble admin and add webpage views --- vrobbler/apps/scrobbles/admin.py | 3 +++ vrobbler/apps/webpages/admin.py | 19 +++++++++++++++++++ vrobbler/apps/webpages/urls.py | 14 ++++++++++++++ vrobbler/apps/webpages/views.py | 12 ++++++++++++ 4 files changed, 48 insertions(+) create mode 100644 vrobbler/apps/webpages/admin.py create mode 100644 vrobbler/apps/webpages/urls.py create mode 100644 vrobbler/apps/webpages/views.py diff --git a/vrobbler/apps/scrobbles/admin.py b/vrobbler/apps/scrobbles/admin.py index f9bab52..58a3ee6 100644 --- a/vrobbler/apps/scrobbles/admin.py +++ b/vrobbler/apps/scrobbles/admin.py @@ -22,6 +22,9 @@ class ScrobbleInline(admin.TabularInline): "video_game", "book", "sport_event", + "board_game", + "geo_location", + "webpage", "user", ) exclude = ("source_id", "scrobble_log") diff --git a/vrobbler/apps/webpages/admin.py b/vrobbler/apps/webpages/admin.py new file mode 100644 index 0000000..79bdecc --- /dev/null +++ b/vrobbler/apps/webpages/admin.py @@ -0,0 +1,19 @@ +from django.contrib import admin + +from webpages.models import WebPage + +from scrobbles.admin import ScrobbleInline + + +@admin.register(WebPage) +class WebPageAdmin(admin.ModelAdmin): + date_hierarchy = "created" + list_display = ( + "title", + "url", + ) + ordering = ("-created",) + search_fields = ("title",) + inlines = [ + ScrobbleInline, + ] diff --git a/vrobbler/apps/webpages/urls.py b/vrobbler/apps/webpages/urls.py new file mode 100644 index 0000000..1d79cb2 --- /dev/null +++ b/vrobbler/apps/webpages/urls.py @@ -0,0 +1,14 @@ +from django.urls import path +from webpages import views + +app_name = "webpages" + + +urlpatterns = [ + path("webpage/", views.WebPageListView.as_view(), name="webpage_list"), + path( + "webpage//", + views.WebPageDetailView.as_view(), + name="webpage_detail", + ), +] diff --git a/vrobbler/apps/webpages/views.py b/vrobbler/apps/webpages/views.py new file mode 100644 index 0000000..d25567f --- /dev/null +++ b/vrobbler/apps/webpages/views.py @@ -0,0 +1,12 @@ +from django.views import generic +from webpages.models import WebPage + + +class WebPageListView(generic.ListView): + model = WebPage + paginate_by = 20 + + +class WebPageDetailView(generic.DetailView): + model = WebPage + slug_field = "uuid"