Как редактировать промежуточную таблицу Django?

Итак, я пытаюсь сделать 2 модели следующим образом

class Product(models.Model):
    name = models.CharField(max_length=70)
    availability = models.ManyToManyField(Store)

class Store(models.Model):
    name = models.CharField(max_length=150)
    location = models.CharField(max_length=150)

И проблема в том, что мне нужно где-то в базе данных хранить количество конкретных товаров, содержащихся в каждом магазине. Например, Товар#1 - Магазин#1(23), Магазин#2(12) и т.д.

Есть ли возможность хранить его в промежуточной таблице (из ManyToManyfield) или есть что-то более простое.

Вы можете указать through=… модель [Django-doc]:

class Product(models.Model):
    name = models.CharField(max_length=70)
    availability = models.ManyToManyField(Store, through='StoreProduct')

class Store(models.Model):
    name = models.CharField(max_length=150)
    location = models.CharField(max_length=150)

class StoreProduct(models.Model):
    product = models.ForeignKey(Product, on_delete=models.CASCADE)
    store = models.ForeignKey(Store, on_delete=models.CASCADE)
    amount = models.IntegerField(default=1)
Вернуться на верх