Improve "Add Version" page in admin

This commit is contained in:
Michael Herrmann
2021-12-15 08:52:07 +01:00
parent 8565306111
commit 9f052db67f
+7 -1
View File
@@ -47,7 +47,6 @@ class InstallerInline(StackedInline):
model = Installer
form = InstallerForm
readonly_fields = ('sha256',)
extra = 0
def get_queryset(self, request):
qs = super().get_queryset(request)
@@ -55,6 +54,13 @@ class InstallerInline(StackedInline):
return qs
return qs.filter(version__package__tenant__user=request.user)
def get_extra(self, request, obj: Version = None, **kwargs):
# Show one empty Installer form when the version does not yet have an
# associated installer. Otherwise, don't add another Installer form.
if obj and obj.installer_set.exists():
return 0
return 1
class VersionAdmin(ModelAdmin):
inlines = (InstallerInline,)