2019-10-28 16:50:13 +01:00
|
|
|
from django.db import models
|
|
|
|
|
|
|
|
class Ingredient(models.Model):
|
|
|
|
name = models.CharField(max_length=128)
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
return self.name
|
|
|
|
|
|
|
|
class Recipe(models.Model):
|
|
|
|
name = models.CharField(max_length=128)
|
|
|
|
ingredients = models.ManyToManyField(Ingredient, through='IngredientUsage')
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
return self.name
|
|
|
|
|
2019-11-08 16:46:41 +01:00
|
|
|
class Step(models.Model):
|
|
|
|
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE)
|
|
|
|
step = models.PositiveSmallIntegerField()
|
|
|
|
protocol = models.TextField(default='')
|
|
|
|
|
2019-10-28 16:50:13 +01:00
|
|
|
class IngredientUsage(models.Model):
|
|
|
|
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE)
|
|
|
|
ingredient = models.ForeignKey(Ingredient, on_delete=models.CASCADE)
|
|
|
|
quantity = models.CharField(max_length=64)
|