From 5efac79a63133bb984abd08223520145a53755e5 Mon Sep 17 00:00:00 2001 From: Jacob Babor Date: Fri, 24 Jan 2025 15:11:46 -0600 Subject: [PATCH] Implement the tag inheritance thing --- odyseescraper/admin.py | 2 +- odyseescraper/models.py | 6 ++++++ odyseescraper/templates/release_list.html | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/odyseescraper/admin.py b/odyseescraper/admin.py index a5db70b..e165ba1 100644 --- a/odyseescraper/admin.py +++ b/odyseescraper/admin.py @@ -5,7 +5,7 @@ from .models import OdyseeChannel, OdyseeRelease, Tag # Register your models here. @admin.register(OdyseeChannel) class OdyseeChannelAdmin(admin.ModelAdmin): - list_display = ['name', 'handle', 'description', 'get_tags', 'id'] + list_display = ['name', 'handle', 'get_tags', 'description', 'id'] search_fields = ['name', 'description', 'handle'] ordering = ['name'] list_filter = ['tags'] diff --git a/odyseescraper/models.py b/odyseescraper/models.py index eaf2dd4..72cd7a6 100644 --- a/odyseescraper/models.py +++ b/odyseescraper/models.py @@ -35,3 +35,9 @@ class OdyseeRelease(models.Model): def __str__(self): return self.name + + @property + def all_tags(self): + self_tags = self.tags.all() + channel_tags = self.channel.tags.all() + return self_tags | channel_tags diff --git a/odyseescraper/templates/release_list.html b/odyseescraper/templates/release_list.html index e85d851..b993703 100644 --- a/odyseescraper/templates/release_list.html +++ b/odyseescraper/templates/release_list.html @@ -11,7 +11,7 @@

{{ release.channel.handle }}

{{ release.description }}

- {% for tag in release.tags.all %} + {% for tag in release.all_tags.all %} {{ tag.name }} {% endfor %}