in the newforms docs for ImageField?, it says:
ImageField
New in Django development version
Default widget: FileInput
Empty value: None
Normalizes to: An UploadedFile object that wraps the file content and file name into a single object.
Validates that file data has been bound to the form, and that the file is of an image format understood by PIL.
Error message keys: required, invalid, missing, empty, invalid_image
Using an ImageField requires that the Python Imaging Library is installed.
When you use a FileField on a form, you must also remember to bind the file data to the form.
On the last line, it should say ImageField? instead, or mention that ImageField? is a subclass of FileField?.