使用基本url按值获取数据()

2024-09-30 16:36:56 发布

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

我有一个图像表,有超过10k的图像。你知道吗

型号.py

class Image(models.Model):
    image = models.ImageField(upload_to='image')
    tag = models.CharField(max_length=100)

视图.py

Image.objects.filter(tag__icontains=tag).values('image')

通过以上查询,我得到了这种格式的数据。你知道吗

[
    {
            "image": "image/mcml4__9_ipmVd6E.jpeg",

    },
    {
            "image": "image/mcml4__df9_ipmfgdfVd6E.jpeg",

    }
]

但我需要这个基本网址。你知道吗

[

    {
            "image": "http://{{baseurl}}/media/image/mcml4__9_ipmVd6E.jpeg",

    },
    {
            "image": "http://{{baseurl}}/media/image/mcml4__9_ipmVd6E.jpeg",

    }
]

我怎样才能只使用orm查询而不在python内存中进行操作呢。你知道吗


Tags: py图像imagehttpmodelmodelstagmedia
1条回答
网友
1楼 · 发布于 2024-09-30 16:36:56

尝试修改此代码段:

视图.py

from django.db.models.functions import Concat
from django.db.models import Value

Image.objects.filter(tag__icontains=tag).values(image=Concat(Value('http://base_url.com', 'image', output_field=CharField())))

我还没试过,但肯定有用。你知道吗

相关问题 更多 >