On 12 April 2013 08:43, Dennis Lee Bieber <wlfr...@ix.netcom.com> wrote: > On Thu, 11 Apr 2013 16:41:37 +1000, Lachlan Musicman <data...@gmail.com> > declaimed the following in gmane.comp.python.django.user: > >> # Relations >> parents = models.ManyToManyField("self", related_name='p', >> verbose_name="Parents", null=True, blank=True) >> siblings = models.ManyToManyField("self", related_name='s', >> verbose_name="Siblings", null=True, blank=True) >> partners = models.ManyToManyField("self", related_name='ps', >> verbose_name="Partners", null=True, blank=True) >> children = models.ManyToManyField("self", related_name='c', >> verbose_name="Children", null=True, blank=True) >> > Too many links... > > By definition, full siblings are the set in which all the parents > are identical, so you shouldn't be storing a many-to-many table for > siblings; "step" siblings are the set in which one parent but not the > other are identical. > > An individual typically only has two parents (unless you are > considering birth and adoption, which may be needed to handle some of > the odd situations forming with the various "same sex marriage" models), > so many-to-many isn't really appropriate. And an individual could have > many children. > > So I'd have a pair of links for > > father > mother > > and that is IT... Children and Siblings are all query results (children > of X are those with the appropriate parent slot = X).
I like your reasoning, but I disagree on your result. First, it doesn't relate partners, second, it presumes two parents (I am a step father). So I think I'm going to go with a parent m2m partner m2m and take your advise to trash sibling and children. Back to the grindstone then. cheers L. -- The new creativity is pointing, not making. Likewise, in the future, the best writers will be the best information managers. http://www.theawl.com/2013/02/an-interview-with-avant-garde-poet-kenneth-goldsmith -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at http://groups.google.com/group/django-users?hl=en. For more options, visit https://groups.google.com/groups/opt_out.