Add ClubMembership enhancements, CSV import command, and related tests
- Extend the ClubMembership model with `club`, `member`, and optional `license` fields, along with relevant constraints and ordering. - Implement verbose names for Club and ClubMembership models and update admin configurations for better display and filtering. - Add a `import_members_csv` management command for batch importing members, clubs, and memberships from a CSV file. - Include extensive tests for the `import_members_csv` command, ClubMembership model, and Club model. - Refactor related migrations, services, and test structure.
This commit is contained in:
@@ -1,3 +1,24 @@
|
||||
from django.contrib import admin
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from .models import Club, ClubMembership
|
||||
|
||||
|
||||
# Register your models here.
|
||||
@admin.register(Club)
|
||||
class ClubAdmin(admin.ModelAdmin):
|
||||
list_display = ["name"]
|
||||
search_fields = ["name"]
|
||||
ordering = ["name"]
|
||||
|
||||
|
||||
@admin.register(ClubMembership)
|
||||
class ClubMembershipAdmin(admin.ModelAdmin):
|
||||
list_display = ["club__name", "member__last_name", "member__first_name", "license"]
|
||||
search_fields = ["club__name", "member__last_name", "member__first_name"]
|
||||
list_filter = ["club"]
|
||||
raw_id_fields = ["member"]
|
||||
fieldsets = [
|
||||
[None, {"fields": ["club", "member"]}],
|
||||
[_("Member informaton"), {"fields": ["license"]}],
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user