Adding Family Model
This commit is contained in:
@@ -162,6 +162,12 @@ class SuburbsAdmin(MyImportExportModelAdmin, admin.ModelAdmin):
|
||||
list_filter = ["state"]
|
||||
|
||||
|
||||
class FamilyInline(admin.StackedInline):
|
||||
model = Family
|
||||
classes = ['collapse']
|
||||
extra = 0
|
||||
|
||||
|
||||
class TravellerRouteInline(admin.TabularInline):
|
||||
model = TravellerRoute
|
||||
extra = 0
|
||||
@@ -169,7 +175,7 @@ class TravellerRouteInline(admin.TabularInline):
|
||||
|
||||
@admin.register(Traveller)
|
||||
class TravellerAdmin(MyImportExportModelAdmin, CloneModelAdmin, admin.ModelAdmin, TravellerRollMixin):
|
||||
list_display = ["first_name", "last_name", "school", "year_level", "is_active", "residential_address", "residential_suburb", "stop_route", "shuttle", "travel_start_date", "travel_end_date"]
|
||||
list_display = ["first_name", "last_name", "school", "year_level", "is_active", "address", "stop_route", "shuttle", "travel_start_date", "travel_end_date"]
|
||||
list_filter = [
|
||||
"is_active", "school", "year_level", "eligibility_status", "bus_stops__bus", "shuttle", "residential_suburb",
|
||||
("travel_start_date", DateRangeFilterBuilder(
|
||||
@@ -187,7 +193,7 @@ class TravellerAdmin(MyImportExportModelAdmin, CloneModelAdmin, admin.ModelAdmin
|
||||
"emergency_contact_A_firstname", "emergency_contact_A_lastname", "emergency_contact_A_phone",
|
||||
"emergency_contact_A_relation", "emergency_contact_B_firstname", "emergency_contact_B_lastname",
|
||||
"emergency_contact_B_phone", "emergency_contact_B_relation"]
|
||||
inlines = [TravellerRouteInline]
|
||||
inlines = [FamilyInline, TravellerRouteInline]
|
||||
readonly_fields = ["travel_start_date", "travel_end_date", "fare_paying", "created_on", "last_edit", "is_active"]
|
||||
actions = ["export_to_csv", "send_sms", "confirmation_letter", "letter_creator"]
|
||||
fieldsets = [
|
||||
@@ -255,9 +261,6 @@ class TravellerAdmin(MyImportExportModelAdmin, CloneModelAdmin, admin.ModelAdmin
|
||||
]
|
||||
# list_display_links = None
|
||||
|
||||
def yearly_rollover(self, request, queryset):
|
||||
pass
|
||||
|
||||
def stop_route(self, obj):
|
||||
stops = BusStop.objects.filter(traveller__id__exact=obj.id)
|
||||
if stops.count() == 0:
|
||||
@@ -266,10 +269,19 @@ class TravellerAdmin(MyImportExportModelAdmin, CloneModelAdmin, admin.ModelAdmin
|
||||
return stops.first()
|
||||
return "Multiple"
|
||||
|
||||
def save_model(self, request, obj, form, change):
|
||||
if obj.is_archived and obj.travel_end_date is None:
|
||||
obj.is_archived = False
|
||||
super().save_model(request, obj, form, change)
|
||||
def address(self, obj):
|
||||
families = Family.objects.filter(traveller__id__exact=obj.id)
|
||||
if families.count() == 0:
|
||||
return ""
|
||||
if families.count() == 1:
|
||||
family = families.first()
|
||||
return f"{family.residential_address} {family.residential_suburb}"
|
||||
return "Multiple"
|
||||
|
||||
# def save_model(self, request, obj, form, change):
|
||||
# if obj.is_archived and obj.travel_end_date is None:
|
||||
# obj.is_archived = False
|
||||
# super().save_model(request, obj, form, change)
|
||||
|
||||
|
||||
# @admin.register(TravellerRoute)
|
||||
|
||||
Reference in New Issue
Block a user