{"title":"The File object","version":"5.0","locale":"en","docname":"ref/files/file","url":"/en/5.0/ref/files/file/","canonical":"https://djangodocs.dev/en/5.0/ref/files/file/","summary":"The django.core.files module and its submodules contain built-in classes for basic file handling in Django. The File class Link to this heading # class File (…","html":"<h1>The <code class=\"docutils literal notranslate\"><span class=\"pre\">File</span></code> object<a class=\"heading-anchor\" href=\"#the-file-object\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>The <a class=\"reference internal\" href=\"/en/5.0/ref/files/#module-django.core.files\" title=\"django.core.files: File handling and storage\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.core.files</span></code></a> module and its submodules contain built-in classes\nfor basic file handling in Django.</p>\n<section id=\"the-file-class\">\n<h2>The <code class=\"docutils literal notranslate\"><span class=\"pre\">File</span></code> class<a class=\"heading-anchor\" href=\"#the-file-class\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">File</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">file_object</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a> class is a thin wrapper around a Python\n<a class=\"reference external\" href=\"https://docs.python.org/3/glossary.html#term-file-object\" title=\"(in Python v3.14)\"><span class=\"xref std std-term\">file object</span></a> with some Django-specific additions.\nInternally, Django uses this class when it needs to represent a file.</p>\n<p><a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a> objects have the following attributes and methods:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.name\">\n<span class=\"sig-name descname\"><span class=\"pre\">name</span></span><a class=\"heading-anchor\" href=\"#django.core.files.File.name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The name of the file including the relative path from\n<a class=\"reference internal\" href=\"/en/5.0/ref/settings/#std-setting-MEDIA_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">MEDIA_ROOT</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.size\">\n<span class=\"sig-name descname\"><span class=\"pre\">size</span></span><a class=\"heading-anchor\" href=\"#django.core.files.File.size\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The size of the file in bytes.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.file\">\n<span class=\"sig-name descname\"><span class=\"pre\">file</span></span><a class=\"heading-anchor\" href=\"#django.core.files.File.file\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The underlying <a class=\"reference external\" href=\"https://docs.python.org/3/glossary.html#term-file-object\" title=\"(in Python v3.14)\"><span class=\"xref std std-term\">file object</span></a> that this class wraps.</p>\n<aside class=\"admonition-be-careful-with-this-attribute-in-subclasses admonition\">\n<p class=\"admonition-title\">Be careful with this attribute in subclasses.</p>\n<p>Some subclasses of <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>, including\n<a class=\"reference internal\" href=\"#django.core.files.base.ContentFile\" title=\"django.core.files.base.ContentFile\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ContentFile</span></code></a> and\n<a class=\"reference internal\" href=\"/en/5.0/ref/models/fields/#django.db.models.fields.files.FieldFile\" title=\"django.db.models.fields.files.FieldFile\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">FieldFile</span></code></a>, may replace this\nattribute with an object other than a Python <a class=\"reference external\" href=\"https://docs.python.org/3/glossary.html#term-file-object\" title=\"(in Python v3.14)\"><span class=\"xref std std-term\">file object</span></a>.\nIn these cases, this attribute may itself be a <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>\nsubclass (and not necessarily the same subclass). Whenever\npossible, use the attributes and methods of the subclass itself\nrather than the those of the subclass’s <code class=\"docutils literal notranslate\"><span class=\"pre\">file</span></code> attribute.</p>\n</aside>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.mode\">\n<span class=\"sig-name descname\"><span class=\"pre\">mode</span></span><a class=\"heading-anchor\" href=\"#django.core.files.File.mode\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The read/write mode for the file.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.open\">\n<span class=\"sig-name descname\"><span class=\"pre\">open</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">mode</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em>, <em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">*</span></span><span class=\"n\"><span class=\"pre\">args</span></span></em>, <em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">**</span></span><span class=\"n\"><span class=\"pre\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.open\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Open or reopen the file (which also does <code class=\"docutils literal notranslate\"><span class=\"pre\">File.seek(0)</span></code>).\nThe <code class=\"docutils literal notranslate\"><span class=\"pre\">mode</span></code> argument allows the same values\nas Python’s built-in <a class=\"reference external\" href=\"https://docs.python.org/3/library/functions.html#open\" title=\"(in Python v3.14)\"><code class=\"docutils literal notranslate\"><span class=\"pre\">open()</span></code></a>. <code class=\"docutils literal notranslate\"><span class=\"pre\">*args</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">**kwargs</span></code>\nare passed after <code class=\"docutils literal notranslate\"><span class=\"pre\">mode</span></code> to Python’s built-in <a class=\"reference external\" href=\"https://docs.python.org/3/library/functions.html#open\" title=\"(in Python v3.14)\"><code class=\"docutils literal notranslate\"><span class=\"pre\">open()</span></code></a>.</p>\n<p>When reopening a file, <code class=\"docutils literal notranslate\"><span class=\"pre\">mode</span></code> will override whatever mode the file\nwas originally opened with; <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> means to reopen with the original\nmode.</p>\n<p>It can be used as a context manager, e.g. <code class=\"docutils literal notranslate\"><span class=\"pre\">with</span> <span class=\"pre\">file.open()</span> <span class=\"pre\">as</span> <span class=\"pre\">f:</span></code>.</p>\n<aside class=\"version-note version-changed\" data-version=\"5.0\">\n<p class=\"version-note-title\">Changed in Django 5.0</p><p>Support for passing <code class=\"docutils literal notranslate\"><span class=\"pre\">*args</span></code> and <code class=\"docutils literal notranslate\"><span class=\"pre\">**kwargs</span></code> was added.</p>\n</aside>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.__iter__\">\n<span class=\"sig-name descname\"><span class=\"pre\">__iter__</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.__iter__\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Iterate over the file yielding one line at a time.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.chunks\">\n<span class=\"sig-name descname\"><span class=\"pre\">chunks</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">chunk_size</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.chunks\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Iterate over the file yielding “chunks” of a given size. <code class=\"docutils literal notranslate\"><span class=\"pre\">chunk_size</span></code>\ndefaults to 64 KB.</p>\n<p>This is especially useful with very large files since it allows them to\nbe streamed off disk and avoids storing the whole file in memory.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.multiple_chunks\">\n<span class=\"sig-name descname\"><span class=\"pre\">multiple_chunks</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">chunk_size</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.multiple_chunks\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returns <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> if the file is large enough to require multiple chunks\nto access all of its content give some <code class=\"docutils literal notranslate\"><span class=\"pre\">chunk_size</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.close\">\n<span class=\"sig-name descname\"><span class=\"pre\">close</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.close\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Close the file.</p>\n</dd></dl>\n\n<p>In addition to the listed methods, <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a> exposes\nthe following attributes and methods of its <code class=\"docutils literal notranslate\"><span class=\"pre\">file</span></code> object:\n<code class=\"docutils literal notranslate\"><span class=\"pre\">encoding</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">fileno</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">flush</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">isatty</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">newlines</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">read</span></code>,\n<code class=\"docutils literal notranslate\"><span class=\"pre\">readinto</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">readline</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">readlines</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">seek</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">tell</span></code>,\n<code class=\"docutils literal notranslate\"><span class=\"pre\">truncate</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">write</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">writelines</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">readable()</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">writable()</span></code>,\nand <code class=\"docutils literal notranslate\"><span class=\"pre\">seekable()</span></code>.</p>\n</dd></dl>\n\n</section>\n<section id=\"the-contentfile-class\">\n<h2>The <code class=\"docutils literal notranslate\"><span class=\"pre\">ContentFile</span></code> class<a class=\"heading-anchor\" href=\"#the-contentfile-class\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.base.ContentFile\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">ContentFile</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">content</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.base.ContentFile\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>The <code class=\"docutils literal notranslate\"><span class=\"pre\">ContentFile</span></code> class inherits from <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>,\nbut unlike <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a> it operates on string content\n(bytes also supported), rather than an actual file. For example:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.core.files.base</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">ContentFile</span>\n\n<span class=\"n\">f1</span> <span class=\"o\">=</span> <span class=\"n\">ContentFile</span><span class=\"p\">(</span><span class=\"s2\">&quot;esta frase está en español&quot;</span><span class=\"p\">)</span>\n<span class=\"n\">f2</span> <span class=\"o\">=</span> <span class=\"n\">ContentFile</span><span class=\"p\">(</span><span class=\"sa\">b</span><span class=\"s2\">&quot;these are bytes&quot;</span><span class=\"p\">)</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"the-imagefile-class\">\n<h2>The <code class=\"docutils literal notranslate\"><span class=\"pre\">ImageFile</span></code> class<a class=\"heading-anchor\" href=\"#the-imagefile-class\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.images.ImageFile\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">ImageFile</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">file_object</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">name</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">None</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.images.ImageFile\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Django provides a built-in class specifically for images.\n<a class=\"reference internal\" href=\"#django.core.files.images.ImageFile\" title=\"django.core.files.images.ImageFile\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">django.core.files.images.ImageFile</span></code></a> inherits all the attributes\nand methods of <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>, and additionally\nprovides the following:</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.images.ImageFile.width\">\n<span class=\"sig-name descname\"><span class=\"pre\">width</span></span><a class=\"heading-anchor\" href=\"#django.core.files.images.ImageFile.width\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Width of the image in pixels.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.images.ImageFile.height\">\n<span class=\"sig-name descname\"><span class=\"pre\">height</span></span><a class=\"heading-anchor\" href=\"#django.core.files.images.ImageFile.height\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Height of the image in pixels.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"additional-methods-on-files-attached-to-objects\">\n<h2>Additional methods on files attached to objects<a class=\"heading-anchor\" href=\"#additional-methods-on-files-attached-to-objects\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Any <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a> that is associated with an object (as with <code class=\"docutils literal notranslate\"><span class=\"pre\">Car.photo</span></code>,\nbelow) will also have a couple of extra methods:</p>\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.save\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">File.</span></span><span class=\"sig-name descname\"><span class=\"pre\">save</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">name</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">content</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">save</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">True</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.save\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Saves a new file with the file name and contents provided. This will not\nreplace the existing file, but will create a new file and update the object\nto point to it. If <code class=\"docutils literal notranslate\"><span class=\"pre\">save</span></code> is <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, the model’s <code class=\"docutils literal notranslate\"><span class=\"pre\">save()</span></code> method will\nbe called once the file is saved. That is, these two lines:</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">car</span><span class=\"o\">.</span><span class=\"n\">photo</span><span class=\"o\">.</span><span class=\"n\">save</span><span class=\"p\">(</span><span class=\"s2\">&quot;myphoto.jpg&quot;</span><span class=\"p\">,</span> <span class=\"n\">content</span><span class=\"p\">,</span> <span class=\"n\">save</span><span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">car</span><span class=\"o\">.</span><span class=\"n\">save</span><span class=\"p\">()</span>\n</code></pre></div>\n<p>are equivalent to:</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">car</span><span class=\"o\">.</span><span class=\"n\">photo</span><span class=\"o\">.</span><span class=\"n\">save</span><span class=\"p\">(</span><span class=\"s2\">&quot;myphoto.jpg&quot;</span><span class=\"p\">,</span> <span class=\"n\">content</span><span class=\"p\">,</span> <span class=\"n\">save</span><span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Note that the <code class=\"docutils literal notranslate\"><span class=\"pre\">content</span></code> argument must be an instance of either\n<a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a> or of a subclass of <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">File</span></code></a>, such as\n<a class=\"reference internal\" href=\"#django.core.files.base.ContentFile\" title=\"django.core.files.base.ContentFile\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ContentFile</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.core.files.File.delete\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">File.</span></span><span class=\"sig-name descname\"><span class=\"pre\">delete</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">save</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">True</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.core.files.File.delete\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Removes the file from the model instance and deletes the underlying file.\nIf <code class=\"docutils literal notranslate\"><span class=\"pre\">save</span></code> is <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, the model’s <code class=\"docutils literal notranslate\"><span class=\"pre\">save()</span></code> method will be called once\nthe file is deleted.</p>\n</dd></dl>\n\n</section>","rootId":"the-file-object","toc":[{"title":"The File class","anchor":"the-file-class","children":[]},{"title":"The ContentFile class","anchor":"the-contentfile-class","children":[]},{"title":"The ImageFile class","anchor":"the-imagefile-class","children":[]},{"title":"Additional methods on files attached to objects","anchor":"additional-methods-on-files-attached-to-objects","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"API Reference","url":"/en/5.0/ref/"},{"docname":"ref/files/index","title":"File handling","url":"/en/5.0/ref/files/"}],"prev":{"docname":"ref/files/index","title":"File handling","url":"/en/5.0/ref/files/"},"next":{"docname":"ref/files/storage","title":"File storage API","url":"/en/5.0/ref/files/storage/"},"formats":{"html":"/en/5.0/ref/files/file/","markdown":"/en/5.0/ref/files/file.md","json":"/en/5.0/ref/files/file.json"},"source":"https://github.com/django/django/blob/stable/5.0.x/docs/ref/files/file.txt","official":"https://docs.djangoproject.com/en/5.0/ref/files/file/","inVersions":["dev","6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9","1.8"],"inLocales":["en","zh-hans","fr","ja","id","it","pt-br","ko","es","el","pl"]}