【发布时间】:2021-05-22 01:19:00
【问题描述】:
我想在单个 JSON 字段中存储多个输入。
这是订单表,有一个“attribute_field”我想在这个字段中存储属性 作为 JSON。
models.py
class Order(models.Model):
order_id = models.AutoField("Order ID", primary_key=True)
user_id = models.ForeignKey(User, on_delete=models.CASCADE, null=False, verbose_name="Customer ID")
prod_id = models.ForeignKey(Product, on_delete=models.CASCADE, null=False, verbose_name="Product ID")
quantity = models.ImageField('Product Quantity', max_length=10, default=500)
attribute_value = models.CharField("Item Details JSON", max_length=2000, null=False)
order_price = models.DecimalField(max_digits=8, decimal_places=2, default=0000.00)
views.py
def order(request, id):
if request.method == 'POST':
customer_id = request.user.user_id
product_id = id
try:
size = request.POST['size']
except MultiValueDictKeyError:
pass
try:
Colour = request.POST['Color']
except MultiValueDictKeyError:
pass
try:
Paper_Choice = request.POST['PaperChoice']
except MultiValueDictKeyError:
pass
return render(request, 'user/order.html')
这里我没有做表单保存方法,但是让我解释一下我想要做什么。
我想将 SIZE、COLOR、PAPER CHOICE 包装成单个 JSON 并将其存储在模型的 attribut_values 字段中但不知道该怎么做,请您解释一下。
【问题讨论】:
-
看看这是否能解决你的问题 - JSONField in Models
标签: python json django django-models model