繁体   English   中英

用图像字段在Django中更新

[英]update in django with image field

我正在尝试使用Django orm仅更新图像字段,即用户以后将添加图像并将在主表中更新

我试过了

MerchantProfile.objects.filter(id='%s'%(cd['id'])).update(photo='%s'%(cd['photo']))

但它只会更新标题,而图像不会保存在文件夹中

然后我尝试跟随

p1=MerchantProfile()
p1.id=cd['id']
if cd['photo']:
       p1.photo=cd['photo']
else:
       p1.photo=cd['uploaded_photo']
p1.save()

这将节省的形象,而且会显示错误,如payment_card不能为null

我的模特如下

class Merchantprofile:
   user = models.OneToOneField(UserProfile, related_name="merchant_profile")
   payment_card = models.OneToOneField(PaymentCard, related_name="merchant_profile")
   current_state = models.IntegerField('State', choices=STATE_CHOICES)
   name = models.CharField('Merchant Name', max_length=64)
   photo=models.ImageField(upload_to='logo',blank=True)

形成

class LogoForm(forms.Form):
     id = forms.CharField(widget=forms.HiddenInput,required=False)
     photo = forms.ImageField(
        required=False,
        label='Upload photo',
        initial=True,
        help_text='max. 4 megabytes'
    )

那么,仅通过在相关文件夹上上传照片来更新照片字段的最佳方法是什么,因为我无法每次都更新所有字段

尝试这个:

p1 = MerchantProfile.objects.filter(id=cd['id'])
if cd['photo']:
   p1.photo=cd['photo']
else:
   p1.photo=cd['uploaded_photo']
p1.save()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM