diff --git a/src/servala/core/crd.py b/src/servala/core/crd.py index aebb99f..e414168 100644 --- a/src/servala/core/crd.py +++ b/src/servala/core/crd.py @@ -292,8 +292,9 @@ class FormGeneratorMixin: if "context" in self.fields: self.fields["context"].widget = forms.HiddenInput() - if "context" in self.initial: - self.fields["context"].queryset = ControlPlaneCRD.objects.filter(pk=self.initial["context"].pk) + if crd := self.initial.get("context"): + crd = getattr(crd, "pk", crd) # can be int or object + self.fields["context"].queryset = ControlPlaneCRD.objects.filter(pk=crd) if self.instance and hasattr(self.instance, "name") and self.instance.name: if "name" in self.fields: diff --git a/src/servala/core/models/service.py b/src/servala/core/models/service.py index 280c780..1535703 100644 --- a/src/servala/core/models/service.py +++ b/src/servala/core/models/service.py @@ -891,7 +891,6 @@ class ServiceInstance(ServalaModelMixin, models.Model): return return self.context.django_model( name=self.name, - organization=self.organization, context=self.context, spec=self.spec, # We pass -1 as ID in order to make it clear that a) this object exists (remotely), diff --git a/src/servala/frontend/templates/frontend/organizations/service_offering_detail.html b/src/servala/frontend/templates/frontend/organizations/service_offering_detail.html index 3305328..53e32d2 100644 --- a/src/servala/frontend/templates/frontend/organizations/service_offering_detail.html +++ b/src/servala/frontend/templates/frontend/organizations/service_offering_detail.html @@ -17,7 +17,7 @@ {% endif %} {% endpartialdef %} {% partialdef service-form %} -{% if service_form %} +{% if service_form or custom_service_form %}