Django将图像字段保存到ForeignKey对象

2024-05-23 21:41:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将图像保存在一个文件夹中,并使用ForeignKey将其绑定到另一个数据库对象,以便以后查找。我有在文件夹中抓取图像的代码,现在我正试图保存它们

我当前的错误是:

'ImageFileDescriptor' object has no attribute 'save'

Models.py

class Usertasks(models.Model):
    TaskID = models.CharField(max_length=55)
    user = models.ForeignKey(User, unique=False, on_delete=models.CASCADE)
    TaskStatus = models.CharField(max_length=15, default="missing")

class TaskImages(models.Model):
    UserTasks = models.ForeignKey(Usertasks, related_name='images', on_delete=models.CASCADE)
    image = models.ImageField()

views.py

def task_info(request, taskid):
    task = Usertasks.objects.get(TaskID=taskid)
    files = os.listdir(task.OutputPath)
    fullpath = task.OutputPath
    print(files)
    for img in files:
        fullpath = os.path.abspath(img)
        with open(fullpath, 'rb') as f: 
            data = File(f)
            TaskImages.image.save(img, data, True, UserTasks=task)
    return render(request, 'dashboard/task.html', {'path':fullpath, 'image':files})

Tags: py图像image文件夹imgtaskmodelmodels