如何在Django中没有提交按钮的情况下保存表单

时间:2019-04-22 16:54:59

标签: python django forms

我有一个疑问,我想保存一个表单并且不使用提交按钮。

因为,您将看到:

enter image description here

我需要增加“ cantidad”,但是我不想使用“ sumbmit”按钮,否则,我需要数据(整数)将正确地保留在数据库字段中。

因为,在我的models.py中,我有:

say "\c[774, 775]"

当用户增加或减少“选择”时,我想修改“ candidad”字段,如您在图像中看到的那样,并且没有提交按钮。

有没有办法做到这一点?

任何帮助谢谢!!

1 个答案:

答案 0 :(得分:1)

与您交谈后,类似的方法将起作用,但是您必须根据需要对其进行修改。 I would use sessions,因为它们的值被存储而不必在数据库中保存您当前的模型字段,并且用户仍然可以浏览该站点而不必每次都更新值。

记住:像字典一样可以访问会话。但是您必须像保存任何模型一样对它们进行.save(),因为它仍然是存储在数据库中的模型。之所以要使用这些名称而不是产品模型,是因为会话的目的是随机的,并且易于使用python manage.py clearsessions进行清除。如果您使用自己的模型,并假设有成千上万的模型可供您挖掘,而这些模型从来没有被人购买过,那么这将变得更加快捷,快捷,并保持数据库的清洁。

这是一个快速的答案,尽管我建议您实施别人已经制作的购物车。检查djangopackages.org中是否有一些不错的东西。他们拥有的将比我要向您展示的要好,尽管这是您遵循这两种方法的原则。

要采取的一般步骤:

  1. 创建会话密钥:request.session['cart'] = {}
  2. 为其添加键和值:request.session['cart']['product_id'] = 111
  3. 为该产品添加更多值:request.session['cart']['quantity'] = 222
  4. 保存:request.session.save()