Django queryset filter for blank FileField?

Question:

How do I perform a Django queryset filter looking for blank files in FileField fields?

The field isn’t null, it has a FileObject in it that doesn’t have a file.

Asked By: MikeN

||

Answers:

I was having this issue too, and finally found the solution!

no_files = MyModel.objects.filter(foo='')

This works because internally, the FileField is represented as a local file path in a CharField, and Django stores non-files as an empty string '' in the database.

Answered By: Andrew

An alternative solution:

no_files = MyModel.objects.filter(foo__in=['',None])
Answered By: MXPLUX
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.