as in: goalkeeper = models.ForeignKey(Player, UNIQUE) leftback = models.ForeignKey(Player, UNIQUE) centreback1 = models.ForeignKey(Player, UNIQUE) centreback2 = models.ForeignKey(Player, UNIQUE) rightback = models.ForeignKey(Player, UNIQUE) leftmid = models.ForeignKey(Player, UNIQUE)
etc?? On Feb 25, 10:29 pm, "Honza Král" <[EMAIL PROTECTED]> wrote: > On 2/25/07, DuncanM <[EMAIL PROTECTED]> wrote: > > > > > I have 2 classes: > > > class Player(models.Model): > > team = models.ForeignKey(Team) > > forename = models.CharField(maxlength=50) > > surname = models.CharField(maxlength=50) > > age = models.PositiveIntegerField() > > sex = models.CharField(maxlength=1, choices=Gender_Choices) > > class Admin: > > pass > > list_display = ('forename', 'surname', 'age', 'team', 'sex') > > list_filter = ['team'] > > search_fields = ['forename'] > > #String method > > def __str__(self): > > return self.surname > > > and > > > class Result(models.Model): > > team = models.ForeignKey(Team) > > venue = models.CharField(maxlength=1, choices=Fixture_Choices) > > date = models.DateField() > > opponent = models.CharField(maxlength=100) > > competition = models.ForeignKey(Competition) > > howdenscore = models.IntegerField() > > opponentscore = models.IntegerField() > > goalkeeper = models.ForeignKey(Player) > > leftback = models.ForeignKey(Player) > > centreback1 = models.ForeignKey(Player) > > centreback2 = models.ForeignKey(Player) > > rightback = models.ForeignKey(Player) > > leftmid = models.ForeignKey(Player) > > centremid1 = models.ForeignKey(Player) > > centremid2 = models.ForeignKey(Player) > > rightmid = models.ForeignKey(Player) > > striker = models.ForeignKey(Player) > > striker = models.ForeignKey(Player) > > sub1 = models.ForeignKey(Player) > > sub2 = models.ForeignKey(Player) > > sub3 = models.ForeignKey(Player) > > sub4 = models.ForeignKey(Player) > > sub5 = models.ForeignKey(Player) > > class Admin: > > pass > > list_display = ('date', 'team', 'venue', 'opponent', > > 'competition', 'howdenscore', 'opponentscore') > > list_filter = ['date', 'team', 'venue', 'competition'] > > search_fields = ['date'] > > def __str__ (self): > > return self.opponent > > > However when I try and run syncdb I get the following error: > > teams.result: Accessor for field 'sub5' clashes with related field > > 'Player.result_set'. Add a related_name argument to the definition for > > 'sub5'. > > > teams.result: Accessor for field 'sub5' clashes with related field > > 'Player.result_set'. Add a related_name argument to the definition for > > 'sub5'. > > > *Note that I get the same error for each of the fields from goalkeeper > > through to sub5 (all are foreignkeys of player) > > > Am I going about it in the right way? Or is my modelling wrong? > > your modeling is fine, just add UNIQUE related_name to each foreign > key so that they don't crash... > > if you keep it like this, what should you get, when you ask for a > result_set on a player object? > all the results where he played as goalkeeper or striker? > > the system doesn't know and it needs you to sort this out > > > > > > > What I'm trying to achieve is having a table full of players, and for > > a result I want to see which 17 of those players were at the game (to > > calculate appearances later on) so the results page would be such > > like: > > > Team A vs Team B > > 10th March > > Old Trafford > > 2-1 > > Gary Neville > > Edwin Van der Saar > > Patrice Evra > > Rio Ferdinand > > Wayne Rooney > > > etc (listing the full team who played and the subs chosen) > > > Many thanks, > > Duncan > > -- > Honza Kr?l > E-Mail: [EMAIL PROTECTED] > ICQ#: 107471613 > Phone: +420 606 678585 --~--~---------~--~----~------------~-------~--~----~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---