On 6-7-2012 15:17, Soviet wrote:

> Lets try LEGO pieces. I have a LEGO set that has many pieces (ManyToMany). 
> But I have 4 wheels and 1 brick in that set. The 'brick' can be added with 
> no problem, but how do I save the information that there's 4 'wheel' 
> objects and not only one?

You don't. You get all wheel objects and count them. However, I think
the through argument is best explained with your original question, when
you asked:
"Say I want to add list of all Teams my Players played for."

This does not change the player model, nor the team model. What you're
asking for here, is a new model "player history", which is defines the
many-to-many:

class Team(models.Model) :
        name = models.CharField(max_length=64)

class Player(models.Model) :
        name = models.CharField(max_length=64)
        playing_for = models.ForeignKey(Team, related_name='players')
        history = models.ManyToManyField(Team, related_name='player_histories',
through='PlayerHistory') #quoted!

class PlayerHistory(models.Model) :
        team = models.ForeignKey(Team)
        player = models.ForeignKey(Player)
        started = models.DateField()
        ended = models.DateField()


-- 
Melvyn Sopacua


-- 
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.

Reply via email to