Как я могу отфильтровать поле изображения по имени файла в Django - PullRequest
7 голосов
/ 23 декабря 2011

Я добавляю ImageField в мою модель как

class UserImage(models.Model):
    photo = models.ImageField(upload_to='target_path')
    ....

после сохранения изображения, скажем, «a.jpg», затем я хочу, чтобы пользователь с именем файла «a.jpg» отфильтровал модель, как мне следует написать:

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

1 Ответ

15 голосов
/ 23 декабря 2011

Ваше предложение приведет к ошибке.Попробуйте вместо этого:

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

Редактировать: Django предварительно добавляет upload_path к имени файла.Затем запрос должен выполнить что-то похожее, например:

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

...