diff --git a/aleksis/core/models.py b/aleksis/core/models.py
index 53e390fa96831ad509a0bec1ba19a9e4731c90fe..8ac2299c5acf9a7928c27024284e28e6f987b1d3 100644
--- a/aleksis/core/models.py
+++ b/aleksis/core/models.py
@@ -291,7 +291,7 @@ class Group(ExtensibleModel):
     name = models.CharField(verbose_name=_("Long name of group"), max_length=255, unique=True)
     short_name = models.CharField(verbose_name=_("Short name of group"), max_length=255, unique=True, blank=True, null=True)
 
-    members = models.ManyToManyField("Person", related_name="member_of", blank=True)
+    members = models.ManyToManyField("Person", related_name="member_of", blank=True, through="PersonGroupThrough")
     owners = models.ManyToManyField("Person", related_name="owner_of", blank=True)
 
     parent_groups = models.ManyToManyField(
@@ -303,7 +303,7 @@ class Group(ExtensibleModel):
     )
 
     type = models.ForeignKey("GroupType", on_delete=models.CASCADE, related_name="type", verbose_name=_("Type of group"), null=True, blank=True)
-    additional_fields = models.ManyToManyField(AdditionalField, through="PersonGroupThrough")
+    additional_fields = models.ManyToManyField(AdditionalField)
 
 
     def get_absolute_url(self) -> str:
@@ -332,10 +332,17 @@ class Group(ExtensibleModel):
 
 
 class PersonGroupThrough(ExtensibleModel):
-    field = models.ForeignKey(AdditionalField, on_delete=models.CASCADE)
     group = models.ForeignKey(Group, on_delete=models.CASCADE)
     person = models.ForeignKey(Person, on_delete=models.CASCADE)
 
+    def __init__(self, *args, **kwargs):
+        super().__init__(*args, **kwargs)
+
+        for field in self.group.additional_fields:
+            field_class = getattr(jsonstore, field.get_field_type_display())
+            field_name = slugify(field.title).replace("-", "_")
+            field_instance = field_class(verbose_name=field.title)
+            setattr(self, field_name, field_instance)
 
 class Activity(ExtensibleModel):
     user = models.ForeignKey("Person", on_delete=models.CASCADE, related_name="activities")