{"title":"Objektet ”Fil","version":"6.1","locale":"sv","docname":"ref/files/file","url":"/sv/6.1/ref/files/file/","canonical":"https://djangodocs.dev/sv/6.1/ref/files/file/","summary":"Modulen django.core.files och dess undermoduler innehåller inbyggda klasser för grundläggande filhantering i Django.","html":"<h1>Objektet ”Fil<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>Modulen <a class=\"reference internal\" href=\"/sv/6.1/ref/files/#module-django.core.files\" title=\"django.core.files: File handling and storage\"><code class=\"xref py py-mod docutils literal notranslate\">django.core.files</code></a> och dess undermoduler innehåller inbyggda klasser för grundläggande filhantering i Django.</p>\n<section id=\"the-file-class\">\n<h2>Klassen ”Fil<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\">class</span> </em><span class=\"sig-name descname\">File</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">file_object</em>, <em class=\"sig-param\">name<span class=\"o\">=</span><span class=\"default_value\">None</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>Klassen <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a> är ett tunt omslag kring ett 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\">filobjekt</span></a> med vissa Django-specifika tillägg. Internt använder Django denna klass när den behöver representera en fil.</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\">File</code></a>-objekt har följande attribut och metoder:</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\">name</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>Namnet på filen inklusive den relativa sökvägen från <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-MEDIA_ROOT\"><code class=\"xref std std-setting docutils literal notranslate\">MEDIA_ROOT</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\">size</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>Filens storlek i byte.</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\">file</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>Det underliggande 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\">filobjekt</span></a> som denna klass omsluter.</p>\n<aside class=\"admonition-be-careful-with-this-attribute-in-subclasses admonition\" role=\"note\">\n<p class=\"admonition-title\">Var försiktig med detta attribut i underklasser.</p>\n<p>Vissa underklasser till <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a>, inklusive <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\">ContentFile</code></a> och <a class=\"reference internal\" href=\"/sv/6.1/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\">FieldFile</code></a>, kan ersätta detta attribut med ett annat objekt än ett 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\">filobjekt</span></a>. I dessa fall kan attributet självt vara en underklass till <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a> (och inte nödvändigtvis samma underklass). Använd när det är möjligt attributen och metoderna på själva underklassen i stället för dem på underklassens attribut <code class=\"docutils literal notranslate\">file</code>.</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\">mode</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>Läs-/skrivläge för filen.</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\">open</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">mode<span class=\"o\">=</span><span class=\"default_value\">None</span></em>, <em class=\"sig-param\"><span class=\"o\">*</span>args</em>, <em class=\"sig-param\"><span class=\"o\">**</span>kwargs</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>Öppna eller öppna filen igen (vilket också utför <code class=\"docutils literal notranslate\">File.seek(0)</code>). Argumentet <code class=\"docutils literal notranslate\">mode</code> tillåter samma värden som Pythons inbyggda <a class=\"reference external\" href=\"https://docs.python.org/3/library/functions.html#open\" title=\"(in Python v3.14)\"><code class=\"docutils literal notranslate\">open()</code></a>. <code class=\"docutils literal notranslate\">*args</code> och <code class=\"docutils literal notranslate\">**kwargs</code> skickas efter <code class=\"docutils literal notranslate\">mode</code> till Pythons inbyggda <a class=\"reference external\" href=\"https://docs.python.org/3/library/functions.html#open\" title=\"(in Python v3.14)\"><code class=\"docutils literal notranslate\">open()</code></a>.</p>\n<p>När en fil öppnas på nytt kommer <code class=\"docutils literal notranslate\">mode</code> att åsidosätta det läge som filen ursprungligen öppnades med; <code class=\"docutils literal notranslate\">None</code> innebär att filen öppnas på nytt med det ursprungliga läget.</p>\n<p>Den kan användas som en kontexthanterare, t.ex. <code class=\"docutils literal notranslate\">with file.open() as f:</code>.</p>\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\">__iter__</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>Iterera över filen och få fram en rad i taget.</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\">chunks</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">chunk_size<span class=\"o\">=</span><span class=\"default_value\">None</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>Iterera över filen och få fram ”chunks” av en viss storlek. <code class=\"docutils literal notranslate\">chunk_size</code> är som standard 64 KB.</p>\n<p>Detta är särskilt användbart med mycket stora filer eftersom det gör att de kan strömmas från disken och undviker att lagra hela filen i minnet.</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\">multiple_chunks</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">chunk_size<span class=\"o\">=</span><span class=\"default_value\">None</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>Returnerar <code class=\"docutils literal notranslate\">True</code> om filen är tillräckligt stor för att kräva flera bitar för att få tillgång till allt innehåll med en viss <code class=\"docutils literal notranslate\">chunk_size</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\">close</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>Stäng filen.</p>\n</dd></dl>\n\n<p>Förutom de listade metoderna, <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a> följande attribut och metoder för sitt <code class=\"docutils literal notranslate\">file</code>-objekt: <code class=\"docutils literal notranslate\">encoding</code>, <code class=\"docutils literal notranslate\">fileno</code>, <code class=\"docutils literal notranslate\">flush</code>, <code class=\"docutils literal notranslate\">isatty</code>, <code class=\"docutils literal notranslate\">newlines</code>, <code class=\"docutils literal notranslate\">read</code>, <code class=\"docutils literal notranslate\">readinto</code>, <code class=\"docutils literal notranslate\">readline</code>, <code class=\"docutils literal notranslate\">readlines</code>, <code class=\"docutils literal notranslate\">seek</code>, <code class=\"docutils literal notranslate\">tell</code>, <code class=\"docutils literal notranslate\">truncate</code>, <code class=\"docutils literal notranslate\">write</code>, <code class=\"docutils literal notranslate\">writelines</code>, <code class=\"docutils literal notranslate\">readable()</code>, <code class=\"docutils literal notranslate\">writable()</code> och <code class=\"docutils literal notranslate\">seekable()</code>.</p>\n</dd></dl>\n\n</section>\n<section id=\"the-contentfile-class\">\n<h2>Klassen ”ContentFile” (innehållsfil)<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\">class</span> </em><span class=\"sig-name descname\">ContentFile</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">content</em>, <em class=\"sig-param\">name<span class=\"o\">=</span><span class=\"default_value\">None</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>Klassen <code class=\"docutils literal notranslate\">ContentFile</code> ärver från <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a>, men till skillnad från <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a> arbetar den med stränginnehåll (bytes stöds också), snarare än en faktisk fil. Till exempel:</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=\"nn\">django.core.files.base</span> <span class=\"kn\">import</span> ContentFile\n\nf1 <span class=\"o\">=</span> ContentFile<span class=\"p\">(</span><span class=\"s2\">&quot;esta frase está en español&quot;</span><span class=\"p\">)</span>\nf2 <span class=\"o\">=</span> ContentFile<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>Klassen ”ImageFile” (bildfil)<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\">class</span> </em><span class=\"sig-name descname\">ImageFile</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">file_object</em>, <em class=\"sig-param\">name<span class=\"o\">=</span><span class=\"default_value\">None</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 tillhandahåller en inbyggd klass specifikt för bilder. <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\">django.core.files.images.ImageFile</code></a> ärver alla attribut och metoder från <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a>, och tillhandahåller dessutom följande:</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\">width</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>Bildens bredd i pixlar.</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\">height</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>Bildens höjd i pixlar.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"additional-methods-on-files-attached-to-objects\">\n<h2>Ytterligare metoder för filer som är kopplade till objekt<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>Alla <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a> som är associerade med ett objekt (som med <code class=\"docutils literal notranslate\">Car.photo</code>, nedan) kommer också att ha ett par extra metoder:</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\">File.</span><span class=\"sig-name descname\">save</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">name</em>, <em class=\"sig-param\">content</em>, <em class=\"sig-param\">save<span class=\"o\">=</span><span class=\"default_value\">True</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>Sparar en ny fil med det filnamn och innehåll som anges. Detta kommer inte att ersätta den befintliga filen, utan skapa en ny fil och uppdatera objektet så att det pekar på den. Om <code class=\"docutils literal notranslate\">save</code> är <code class=\"docutils literal notranslate\">True</code> kommer modellens metod <code class=\"docutils literal notranslate\">save()</code> att anropas när filen har sparats. Det vill säga dessa två rader:</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>car<span class=\"o\">.</span>photo<span class=\"o\">.</span>save<span class=\"p\">(</span><span class=\"s2\">&quot;myphoto.jpg&quot;</span><span class=\"p\">,</span> content<span class=\"p\">,</span> save<span class=\"o\">=</span><span class=\"kc\">False</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span>car<span class=\"o\">.</span>save<span class=\"p\">()</span>\n</code></pre></div>\n<p>är likvärdiga med:</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>car<span class=\"o\">.</span>photo<span class=\"o\">.</span>save<span class=\"p\">(</span><span class=\"s2\">&quot;myphoto.jpg&quot;</span><span class=\"p\">,</span> content<span class=\"p\">,</span> save<span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Observera att argumentet <code class=\"docutils literal notranslate\">content</code> måste vara en instans av antingen <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a> eller av en underklass av <a class=\"reference internal\" href=\"#django.core.files.File\" title=\"django.core.files.File\"><code class=\"xref py py-class docutils literal notranslate\">File</code></a>, t.ex. <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\">ContentFile</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\">File.</span><span class=\"sig-name descname\">delete</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">save<span class=\"o\">=</span><span class=\"default_value\">True</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>Tar bort filen från modellinstansen och raderar den underliggande filen. Om <code class=\"docutils literal notranslate\">save</code> är <code class=\"docutils literal notranslate\">True</code> kommer modellens metod <code class=\"docutils literal notranslate\">save()</code> att anropas när filen har raderats.</p>\n</dd></dl>\n\n</section>","rootId":"the-file-object","toc":[{"title":"Klassen ”Fil","anchor":"the-file-class","children":[]},{"title":"Klassen ”ContentFile” (innehållsfil)","anchor":"the-contentfile-class","children":[]},{"title":"Klassen ”ImageFile” (bildfil)","anchor":"the-imagefile-class","children":[]},{"title":"Ytterligare metoder för filer som är kopplade till objekt","anchor":"additional-methods-on-files-attached-to-objects","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"API-referens","url":"/sv/6.1/ref/"},{"docname":"ref/files/index","title":"Filhantering","url":"/sv/6.1/ref/files/"}],"prev":{"docname":"ref/files/index","title":"Filhantering","url":"/sv/6.1/ref/files/"},"next":{"docname":"ref/files/storage","title":"API för fillagring","url":"/sv/6.1/ref/files/storage/"},"formats":{"html":"/sv/6.1/ref/files/file/","markdown":"/sv/6.1/ref/files/file.md","json":"/sv/6.1/ref/files/file.json"},"source":"https://github.com/django/django/blob/stable/6.1.x/docs/ref/files/file.txt","official":"https://docs.djangoproject.com/sv/6.1/ref/files/file/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}