#models.py
class Category(MPTTModel):
name = models.CharField(max_length=200)
parent = TreeForeignKey(to='self', on_delete=models.CASCADE, null=True, blank=True, related_name='children')
created_at = models.DateTimeField(auto_now_add=True)
class Item(models.Model):
id = models.CharField(max_length=200, primary_key=True)
name = models.CharField(max_length=200)
rank = models.IntegerField()
quantity = models.IntegerField(null=True, blank=True)
verified = models.BooleanField(null=True, blank=True)
category = models.ManyToManyField(Category, related_name='item')
updated_at = models.DateTimeField(auto_now=True)
created_at = models.DateTimeField(auto_now_add=True)
class Sample(models.Model):
id = models.CharField(max_length=200, primary_key=True)
item = models.ForeignKey(Item, on_delete=models.CASCADE)
date = models.DateField()
name = models.CharField(max_length=200)
text = models.CharField(max_length=200)
updated_at = models.DateTimeField(auto_now=True)
created_at = models.DateTimeField(auto_now_add=True)