For example I have following code:
class FamilyMember(models.Model): user = models.OneToOneField(User)
And I have following situations:
You can do this with a simple ForeignKey to self to indicate the parent:
parent = models.ForeignKey('self', blank=True, null=True, related_name='children')
Now you can do a2.parent = a1, and will automatically get access to a1.children.all().
a2.parent = a1
a1.children.all()