Two thoughts: 1. Have both a one to one and a one to many onto the same children. There's no reason that the current child can't be in both relationships, or you could keep them disjoint by "moving" the old current child to the collection when it id displaced by a new child.
2. Have a many to many on self in the child (set) or a one to one (or just foreign key on self (list) so that the current child allows access to the history children. Or am I misunderstanding the problem. Bill On 1/16/12, Mike Dewhirst <mi...@dewhirst.com.au> wrote: > On 16/01/2012 5:19pm, Bill Beal wrote: >> Why not have a child model that differs from the one-to-one child model >> in that the parent key is now a foreign key to the parent? When another >> child needs to replace the current one in the one-to-one relationship, >> move the child to the second table where there is a many-to-one >> relationship to the parent, then modify the one-to-one child record. If >> necessary, duplicate the current one-to-one record in the many-to-one >> table. Does this make sense? > > I understand what you mean but it feels a bit yukky. Thinking about it > some more maybe I need a 'hidden' field which gets updated on saving > based on the existence of a more modern child. > > Dunno. > > Thanks > > Mike > > >> >> Bill Beal >> >> On Mon, Jan 16, 2012 at 12:55 AM, Mike Dewhirst <mi...@dewhirst.com.au >> <mailto:mi...@dewhirst.com.au>> wrote: >> >> I need a one-to-many to behave like a one-to-one. >> >> The parent instance of my model can only ever have one current child >> instance of another model. Multiple child instances have to exist >> and be kept for the historical record. >> >> The main benefit of one-to-one relationships is that they can be >> mapped together (in the Admin) as an extension of the parent. >> >> In a view I suppose I can use a manager to filter the children into >> a pseudo-one-to-one thingy but how do I do this in the Admin? >> >> Maybe sort them into date order and only show one? Is there a better >> way? >> >> Thanks for any help >> >> Mike >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Django users" group. >> To post to this group, send email to django-users@googlegroups.com >> <mailto:django-users@googlegroups.com>. >> To unsubscribe from this group, send email to >> django-users+unsubscribe@__googlegroups.com >> <mailto:django-users%2bunsubscr...@googlegroups.com>. >> For more options, visit this group at >> http://groups.google.com/__group/django-users?hl=en >> <http://groups.google.com/group/django-users?hl=en>. >> >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Django users" group. >> To post to this group, send email to django-users@googlegroups.com. >> To unsubscribe from this group, send email to >> django-users+unsubscr...@googlegroups.com. >> For more options, visit this group at >> http://groups.google.com/group/django-users?hl=en. > > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To post to this group, send email to django-users@googlegroups.com. > To unsubscribe from this group, send email to > django-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/django-users?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.