我在我的模型中添加一个ImageField,如
class UserImage(models.Model):
photo = models.ImageField(upload_to='target_path')
....
保存图片后,让我们说'a.jpg',然后我想让用户使用文件名'a.jpg'来过滤模型,我该怎么写:
UserImage.objects.filter(photo.filename='a.jpg')
....
答案 0 :(得分:14)
您的建议会给您一个错误。试试这个:
UserImage.objects.filter(photo='a.jpg')
编辑:Django将upload_path添加到文件名之前。然后查询应该执行类似的操作,例如:
UserImage.objects.filter(photo='images/users/photos/a.jpg')
答案 1 :(得分:1)
以上答案将正常工作,此外,您也可以像我一样使用icontains
comment_qs = Upload.objects.filter(title__icontains = str(file_name))。filter(content_type__model ='Task')