Я относительно новичок в Django и OO, поэтому я могу упустить что-то очевидное, но я не могу обернуться, как смоделировать следующее:
У меня естьлокации.
У меня есть игры.
В каждой локации может быть столько игр, сколько нужно, и игры могут быть в нескольких локациях (этиявляются играми, как в «монополии», название игры, а не конкретный экземпляр).
Это достаточно просто для моделирования с отношением m2m:
class Location(models.Model):
name = models.CharField(max_length=300)
city = models.CharField(max_length=300)
[ etc etc ]
games = models.ManyToManyField('Game', related_name='locations', blank=True)
class Game(models.Model):
name = models.CharField(max_length=300)
manufacturers = models.ForeignKey('Manufacturer')
[ etc etc ]
У меня также есть обычный Djangoмодель пользователя.
Теперь, что я пытаюсь добавить к этому отношению, это концепция очков.
Пользователи должны иметь возможность вводить свои оценки для игры, расположенной в определенном месте.Затем я смогу показать, скажем, 10 лучших результатов для каждой игры в локации, а также 10 лучших результатов для игры во всех локациях.
Таким образом, в основном должен быть счет, связанный спользователь, игра и местоположение.
Мне кажется, что это должны быть какие-то отношения с самими отношениями.Я посмотрел на дополнительные поля отношений m2m и промежуточных моделей, но не могу найти способ сделать это правильно.
Любые указатели с удовольствием оценят.
Спасибо!