Я создаю модель в Django с 2 основными классами - классом соответствия и классом игрока. В каждом матче должны быть взяты 2 игрока из базы данных, поэтому я включил внешние ключи в таблицу, но они конфликтуют, так как я дважды ссылаюсь на класс игрока в классе матча.
Я пытался использовать поле related_name, чтобы предотвратить эти конфликты, как видно из кода ниже. Хотя этот пример работает для других пользователей, я получаю сообщение об ошибке, утверждающее, что имя, объявленное в related_name, не определено. Изменение значения related_name изменяет содержание ошибки.
class Player(models.Model):
p_pub_date = models.DateTimeField('date published')
p_username = models.CharField(max_length=20)
p_tag = models.CharField(max_length=20)
p_league_id = models.ForeignKey(League, on_delete=models.CASCADE)
p_elo_rating = models.IntegerField(default=1200)
p_glicko_rating = models.IntegerField(default=1200)
p_character = models.CharField(max_length=20)
p_country = models.CharField(max_length=50)
class Match(models.Model):
m_pub_date = models.DateTimeField('date published')
m_tournament_id = models.ForeignKey(Tournament, on_delete=models.CASCADE)
m_player0_id = models.ForeignKey(Player, on_delete=models.CASCADE, related_name=m_player0_id)
m_player1_id = models.ForeignKey(Player, on_delete=models.CASCADE, related_name=m_player1_id)
m_result = models.IntegerField(default=0)
Когда я запускаю makemigrations, я получаю сообщение об ошибке в моем файле models.py: m_player0_id = models.ForeignKey (Player, on_delete = models.CASCADE, related_name = m_player0_id)
NameError: имя 'm_player0_id' не определено
Заранее спасибо