87 lines
2.4 KiB
Python
87 lines
2.4 KiB
Python
from django.contrib import admin
|
|
from .models import EventCategory, Venue, EventMaster, Event
|
|
|
|
|
|
# Register your models here.
|
|
class EventCategoryAdmin(admin.ModelAdmin):
|
|
list_display = ("title", "description")
|
|
search_fields = ("title", "description")
|
|
list_filter = ("title",)
|
|
|
|
|
|
class VenueAdmin(admin.ModelAdmin):
|
|
list_display = ("id", "title", "address", "latitude", "longitude")
|
|
search_fields = ("title", "address")
|
|
list_filter = ("title",)
|
|
|
|
|
|
class EventMasterAdmin(admin.ModelAdmin):
|
|
list_display = ("title", "event_category", "description")
|
|
search_fields = ("title", "description")
|
|
list_filter = ("event_category", "title")
|
|
|
|
|
|
class EventAdmin(admin.ModelAdmin):
|
|
list_display = (
|
|
"title",
|
|
"category",
|
|
"event_master",
|
|
"start_date",
|
|
"end_date",
|
|
"venue",
|
|
"status",
|
|
"draft",
|
|
"deleted",
|
|
"active",
|
|
)
|
|
list_filter = ("category", "status", "draft", "start_date", "end_date", "venue")
|
|
search_fields = (
|
|
"title",
|
|
"description",
|
|
"venue__title",
|
|
"category__name",
|
|
) # Assuming Venue and EventCategory have a title and name fields respectively
|
|
date_hierarchy = "start_date" # Provides a quick date drill down functionality
|
|
ordering = ("start_date", "from_time") # Orders events in the list view
|
|
fieldsets = (
|
|
(None, {"fields": ("title", "description", "image", "status")}),
|
|
(
|
|
"Date & Time",
|
|
{
|
|
"fields": ("start_date", "end_date", "from_time", "to_time"),
|
|
},
|
|
),
|
|
(
|
|
"Venue Details",
|
|
{
|
|
"fields": ("venue", "venue_capacity"),
|
|
},
|
|
),
|
|
(
|
|
"Category Details",
|
|
{
|
|
"fields": ("category", ),
|
|
},
|
|
),
|
|
(
|
|
"Entry",
|
|
{
|
|
"fields": ("entry_type", "entry_fee", "key_guest", "age_group"),
|
|
},
|
|
),
|
|
(
|
|
"Miscellaneous",
|
|
{
|
|
"fields": ("video_url", "draft"),
|
|
},
|
|
),
|
|
)
|
|
filter_horizontal = () # Use this if there are many-to-many fields
|
|
raw_id_fields = ("venue", "category", "event_master")
|
|
|
|
|
|
admin.site.register(Event, EventAdmin)
|
|
admin.site.register(EventCategory, EventCategoryAdmin)
|
|
admin.site.register(Venue, VenueAdmin)
|
|
admin.site.register(EventMaster, EventMasterAdmin)
|