On 12 April 2013 08:43, Dennis Lee Bieber <[email protected]> wrote:
> On Thu, 11 Apr 2013 16:41:37 +1000, Lachlan Musicman <[email protected]>
> 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 [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to