Make the admin interface better

This commit is contained in:
Salt 2025-01-23 21:15:18 -06:00
parent aae9586127
commit 95a35ff73c
2 changed files with 24 additions and 3 deletions

View File

@ -3,6 +3,18 @@ from django.contrib import admin
from .models import OdyseeChannel, OdyseeRelease, Tag
# Register your models here.
admin.site.register(OdyseeChannel)
admin.site.register(OdyseeRelease)
admin.site.register(Tag)
@admin.register(OdyseeChannel)
class OdyseeChannelAdmin(admin.ModelAdmin):
list_display = ['name', 'handle', 'id']
search_fields = ['name', 'handle']
@admin.register(OdyseeRelease)
class OdyseeReleaseAdmin(admin.ModelAdmin):
list_display = ['name', 'channel', 'url', 'id']
search_fields = ['name', 'url']
list_filter = ['channel', 'tags']
@admin.register(Tag)
class TagAdmin(admin.ModelAdmin):
list_display = ['name', 'description', 'id']
search_fields = ['name']

View File

@ -7,11 +7,17 @@ class Tag(models.Model):
name = models.CharField(max_length=256)
description = models.TextField()
def __str__(self):
return self.name
class OdyseeChannel(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False, db_index=True)
name = models.CharField(max_length=1024)
handle = models.CharField(max_length=1024)
def __str__(self):
return self.name
def save(self, *args, **kwargs):
# First, save the field
super().save(*args, **kwargs)
@ -41,3 +47,6 @@ class OdyseeRelease(models.Model):
thumbnail = models.URLField(max_length=512)
tags = models.ManyToManyField(Tag)
def __str__(self):
return self.name