import random from django.db import models # Create your models here. from django.utils import timezone def generate_token(): letters = 'qwertyuioppasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890' return ''.join([random.choice(letters) for _ in range(30)]) class Game(models.Model): last_move_ts = models.DateTimeField(default=timezone.now) turn = models.IntegerField(default=0) winner = models.IntegerField(null=True, blank=True) class Player(models.Model): game = models.ForeignKey(Game, on_delete=models.CASCADE) field = models.CharField(max_length=100, default=' ' * 100) number = models.IntegerField() token = models.CharField(max_length=30, default=generate_token) attended = models.BooleanField(default=False) class Meta: constraints = [ models.UniqueConstraint(fields=['token'], name='unique_player_token'), ]