Хранить данные из динамической формы в поле массива (postgrsql) - PullRequest
1 голос
/ 22 сентября 2019

Новое в разработке на python / django, я остановлен проблемой.У меня есть модель 'Order', которая хранит ... orders

class Order(models.Model):
    datecom = models.DateTimeField(default=timezone.now, verbose_name="Date de commande")
    when = models.ForeignKey(OrdTime, on_delete=models.CASCADE, blank=True, null=True)
    stand = models.ForeignKey(Group, on_delete=models.CASCADE)
    user = models.CharField(max_length=100, blank=True, null=True)
    products = JSONField(default=defaultlist)
    status = models.BooleanField(default=False)
    dateliv = models.DateTimeField(verbose_name="Date de livraison", blank=True, null=True)
    slug = models.SlugField()

    class Meta:
        verbose_name = "- Commande"
        verbose_name_plural = "- Commandes"
        ordering = ['dateliv']

    def get_products(self):
        return format_html_join('', '{} : {} <br>', ([(product, score) for score, product in self.products]))

    def __str__(self):
        return self.slug

Как вы можете видеть, 'product' - это ArrayField (Postgresql), который хранит список продуктов, для каждого из которых естьколичество.Например:

def defaultlist():
    return [
        (15, "Product 1"),
        (1, "Product 2"),
        (2, "Product 3")
    ]

Я создаю открытую (но аутентифицированную пользователем) форму, которая может хранить данные для заказа продуктов.Эта форма должна хранить дату заказа, название «стенда» и т. Д. И (это моя проблема) хранить название продукта и количество для каждого продукта.Только продукты с количеством> 0 должны храниться.Это беспорядок для меня.Как я могу отобразить поле ввода для каждого продукта строки / количества в форме модели и отформатировать эти входные данные для хранения в поле массива?

Есть идеи сделать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...