Skip to content
Snippets Groups Projects
Verified Commit edd0079b authored by Ernesto Rico Schmidt's avatar Ernesto Rico Schmidt
Browse files

fix: handle different instances better

parent 5090c2d9
No related branches found
No related tags found
No related merge requests found
...@@ -30,6 +30,8 @@ from django.utils import timezone ...@@ -30,6 +30,8 @@ from django.utils import timezone
if typing.TYPE_CHECKING: if typing.TYPE_CHECKING:
from program.models import Host, HostLink, Note, NoteLink, Show, ShowLink from program.models import Host, HostLink, Note, NoteLink, Show, ShowLink
else:
from program.models import Host, HostLink, Note, NoteLink, Show, ShowLink
class Link(TypedDict): class Link(TypedDict):
...@@ -149,15 +151,16 @@ def update_links( ...@@ -149,15 +151,16 @@ def update_links(
for link in instance.links.all(): for link in instance.links.all():
link.delete(keep_parents=True) link.delete(keep_parents=True)
match type(instance): if isinstance(instance, Host):
case "Host": for link_data in links:
for link_data in links: HostLink.objects.create(host=instance, **link_data)
HostLink.objects.create(host=instance, **link_data)
case "Note": if isinstance(instance, Note):
for link_data in links: for link_data in links:
NoteLink.objects.create(note=instance, **link_data) NoteLink.objects.create(note=instance, **link_data)
case "Show":
for link_data in links: if isinstance(instance, Show):
ShowLink.objects.create(show=instance, **link_data) for link_data in links:
ShowLink.objects.create(show=instance, **link_data)
return instance return instance
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment