我有这样的产品型号:
class Product(models.Model):
title = models.TextField(max_length=200)
和像这样的图像模型:
class Image(models.Model):
product = models.ForeignKey(Product)
image = models.ImageField(upload_to=....)
现在,我可以通过formset添加具有多个图像的产品,但是我应该怎么做才能修改现有产品。在服务器端代码中,我需要知道要修改哪个图像,新添加哪个图像,删除哪个图像。当然,我可以通过正常的方式来做,就像删除图像一样,我会将它的名称更改为" delete-img_id"通过javascript,如果我修改了一个图像,我可以将其名称更改为" modify-img_id",然后在django服务器端检查它并正确操作处理它们,如下所示:
def check_img(name):
operate = name.split("-")[0]
img_id = name.slipt("-")[1]
if operate == "modify": modify_img(img_id)
答案 0 :(得分:0)
您可以覆盖ModelAdmin的save_formset
方法
def save_formset(self, request, form, formset, change):
if formset and formset.has_changed():
quiz_obj = formset.save(commit=False)[0].product
# todo
return super(ProductAdmin, self).save_formset(request, form, formset, change)