gpt4 book ai didi

python - 将后台任务抓取的图像保存到 ImageField

转载 作者:行者123 更新时间:2023-12-01 07:01:02 26 4
gpt4 key购买 nike

我有一个程序在后台运行,它将图像输出到我的服务器上的特定文件夹,并且这可能会以不同的时间间隔发生。我需要能够在模板上显示这些图像,因此我想使用 ImageField 将它们保存到数据库中。

我的问题是我如何继续将它们保存到数据库中?我可以在后台任务上沿着 os.listdir(dir) 执行某些操作并将其直接保存到数据库吗?还是需要图像的完整路径?

我已经为此创建了模型

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()

最佳答案

是的,您可以迭代目录并将每个文件保存到模型中:

from django.core.files import File

with open('path_to_file', 'rb') as f:
data = File(f)
TaskImages.image.save('filename', data, True)

也许更棘手的是你什么时候调用这个保存,以及你打算多久调用一次?

关于python - 将后台任务抓取的图像保存到 ImageField,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58626671/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com