如何在django中按文件名过滤图像字段

Lis*_*tLi 8 python django django-models

我在我的模型中添加了一个ImageField

class UserImage(models.Model):
    photo = models.ImageField(upload_to='target_path')
    ....
Run Code Online (Sandbox Code Playgroud)

保存图像后,让我们说'a.jpg',然后我想让用户使用文件名'a.jpg'来过滤模型,我该怎么写:

UserImage.objects.filter(photo.filename='a.jpg')
....
Run Code Online (Sandbox Code Playgroud)

Abi*_*d A 16

你的建议会给你一个错误.试试这个:

UserImage.objects.filter(photo='a.jpg')

编辑:Django将upload_path添加到文件名之前.然后查询应该执行类似的操作,例如:

UserImage.objects.filter(photo='images/users/photos/a.jpg')