简体   繁体   English

如何使用 Django 保存当前用户仅使用 model 的图像?

[英]How to save image in current user used only model using Django?

model.py model.py

class Imageadd(models.Model):
    image_owner = models.ForeignKey(Profile,null=True,blank=True,on_delete=models.CASCADE)
    image = models.ImageField(default='default.jpg',upload_to='blood/')
    date = models.DateTimeField(default=now)

    
    def __str__(self):
        return str(self.image_owner)

views.py视图.py

def bloodImage(request):

    if request.method == 'POST' and request.FILES['pic']:
        image = request.FILES['pic']
        img_obj = Imageadd(image=image)

index.html index.html

    <form action='' method='post' enctype="multipart/form-data">
            {% csrf_token %}
            <input type='file' name='pic' accept='image/*' class="custom-file-input">
            <input type='submit' class="button">
    </form>  
class Imageadd(models.Model):
    image_owner = 
     models.ForeignKey(User,null=True,blank=True,on_delete=models.CASCADE)
    image = models.ImageField(default='default.jpg',upload_to='blood/')
    date = models.DateTimeField(default=now)

    def __str__(self):
        return str(self.image_owner)
    def save(self,*args,**kwargs):
       self.image_owner = self.request.user
       super().save(*args,**kwargs)

Another way in views.py views.py 中的另一种方式

def bloodImage(request):

    if request.method == 'POST' and request.FILES['pic']:
        image = request.FILES['pic']
        img_obj = Imageadd(image=image,image_owner=request.user)
        img_obj.save()

    
    

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

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