Как сохранить изображение в модели, используемой только текущим пользователем, используя Django?

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

def bloodImage(request):

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

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)

Другой способ в 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()

    
    
Вернуться на верх