This line:
gives you a “file-like” object. (Not an actual file in the file system)
This line:
gives you the bytes object with the data from the file.
Saving that file as a field in a model would give you a “real” file-system-based file - but you started out with the stipulation that you didn’t want to do that.
This handles the Django side of it.