|
|
|
@ -32,6 +32,8 @@ class ObjectList(ListView):
|
|
|
|
|
|
|
|
|
|
submit_url_name = None
|
|
|
|
|
|
|
|
|
|
delete_all_url_name = None
|
|
|
|
|
|
|
|
|
|
# copied from BaseListView
|
|
|
|
|
def get(self, request, *args, **kwargs):
|
|
|
|
|
self.object_list = self.get_queryset()
|
|
|
|
@ -80,6 +82,8 @@ class ObjectList(ListView):
|
|
|
|
|
context["list_url"] = list_url
|
|
|
|
|
context["context_object_name"] = self.context_object_name
|
|
|
|
|
context["context_object_name_singular"] = self.context_object_name_singular
|
|
|
|
|
if self.delete_all_url_name:
|
|
|
|
|
context["delete_all_url"] = reverse(self.delete_all_url_name)
|
|
|
|
|
|
|
|
|
|
# Return partials for HTMX
|
|
|
|
|
if self.request.htmx:
|
|
|
|
@ -102,6 +106,9 @@ class ObjectCreate(CreateView):
|
|
|
|
|
|
|
|
|
|
request = None
|
|
|
|
|
|
|
|
|
|
def post_save(self, obj):
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def form_valid(self, form):
|
|
|
|
|
obj = form.save(commit=False)
|
|
|
|
|
if self.request is None:
|
|
|
|
@ -109,6 +116,7 @@ class ObjectCreate(CreateView):
|
|
|
|
|
obj.user = self.request.user
|
|
|
|
|
obj.save()
|
|
|
|
|
form.save_m2m()
|
|
|
|
|
self.post_save(obj)
|
|
|
|
|
context = {"message": "Object created", "class": "success"}
|
|
|
|
|
response = self.render_to_response(context)
|
|
|
|
|
response["HX-Trigger"] = f"{self.context_object_name_singular}Event"
|
|
|
|
@ -170,12 +178,16 @@ class ObjectUpdate(UpdateView):
|
|
|
|
|
|
|
|
|
|
request = None
|
|
|
|
|
|
|
|
|
|
def post_save(self, obj):
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def form_valid(self, form):
|
|
|
|
|
obj = form.save(commit=False)
|
|
|
|
|
if self.request is None:
|
|
|
|
|
raise Exception("Request is None")
|
|
|
|
|
obj.save()
|
|
|
|
|
form.save_m2m()
|
|
|
|
|
self.post_save(obj)
|
|
|
|
|
context = {"message": "Object updated", "class": "success"}
|
|
|
|
|
response = self.render_to_response(context)
|
|
|
|
|
response["HX-Trigger"] = f"{self.context_object_name_singular}Event"
|
|
|
|
|