Переглянути джерело

Fix scrobble admin and add webpage views

Colin Powell 1 рік тому
батько
коміт
ea894e1ebf

+ 3 - 0
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")

+ 19 - 0
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,
+    ]

+ 14 - 0
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/<slug:slug>/",
+        views.WebPageDetailView.as_view(),
+        name="webpage_detail",
+    ),
+]

+ 12 - 0
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"