Fixed #28148 -- Doc'd ImageField name validation concerns with the test client.
This commit is contained in:
parent
a7c6c705e8
commit
bdf192c593
|
@ -742,6 +742,12 @@ Miscellaneous
|
||||||
* The signature of private API ``Widget.build_attrs()`` changed from
|
* The signature of private API ``Widget.build_attrs()`` changed from
|
||||||
``extra_attrs=None, **kwargs`` to ``base_attrs, extra_attrs=None``.
|
``extra_attrs=None, **kwargs`` to ``base_attrs, extra_attrs=None``.
|
||||||
|
|
||||||
|
* File-like objects (e.g., :class:`~io.StringIO` and :class:`~io.BytesIO`)
|
||||||
|
uploaded to an :class:`~django.db.models.ImageField` using the test client
|
||||||
|
now require a ``name`` attribute with a value that passes the
|
||||||
|
:data:`~django.core.validators.validate_image_file_extension` validator.
|
||||||
|
See the note in :meth:`.Client.post`.
|
||||||
|
|
||||||
.. _deprecated-features-1.11:
|
.. _deprecated-features-1.11:
|
||||||
|
|
||||||
Features deprecated in 1.11
|
Features deprecated in 1.11
|
||||||
|
|
|
@ -235,7 +235,15 @@ Use the ``django.test.Client`` class to make requests.
|
||||||
file-processing code expects.)
|
file-processing code expects.)
|
||||||
|
|
||||||
You may also provide any file-like object (e.g., :class:`~io.StringIO` or
|
You may also provide any file-like object (e.g., :class:`~io.StringIO` or
|
||||||
:class:`~io.BytesIO`) as a file handle.
|
:class:`~io.BytesIO`) as a file handle. If you're uploading to an
|
||||||
|
:class:`~django.db.models.ImageField`, the object needs a ``name``
|
||||||
|
attribute that passes the
|
||||||
|
:data:`~django.core.validators.validate_image_file_extension` validator.
|
||||||
|
For example::
|
||||||
|
|
||||||
|
>>> from io import BytesIO
|
||||||
|
>>> img = BytesIO(b'mybinarydata')
|
||||||
|
>>> img.name = 'myimage.jpg'
|
||||||
|
|
||||||
Note that if you wish to use the same file handle for multiple
|
Note that if you wish to use the same file handle for multiple
|
||||||
``post()`` calls then you will need to manually reset the file
|
``post()`` calls then you will need to manually reset the file
|
||||||
|
|
Loading…
Reference in New Issue