from django.db import models class DeckNameTranslation(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) deck = models.ForeignKey("Deck", on_delete=models.PROTECT, related_name='name_translations') language = models.CharField(max_length=64) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.name class CardNameTranslation(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) card = models.ForeignKey("Card", on_delete=models.PROTECT, related_name='name_translations') language = models.CharField(max_length=64) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.name class CardSet(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.name class Deck(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) hex_color = models.CharField(max_length=9) cardset = models.ForeignKey("CardSet", on_delete=models.PROTECT, related_name='decks') created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.name class Rarity(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) icons = models.CharField(max_length=64) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.name class Card(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) decks = models.ManyToManyField("Deck") cardset = models.ForeignKey("CardSet", on_delete=models.PROTECT, related_name='cards') cardnum = models.IntegerField() rarity = models.ForeignKey(Rarity, on_delete=models.PROTECT, related_name='cards') created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) def __str__(self): return self.name + " " + self.rarity.icons + " " + self.cardset.name