{"title":"Django Verktyg","version":"6.1","locale":"sv","docname":"ref/utils","url":"/sv/6.1/ref/utils/","canonical":"https://djangodocs.dev/sv/6.1/ref/utils/","summary":"Detta dokument täcker alla stabila moduler i django.utils . De flesta av modulerna i django.utils är utformade för internt bruk och endast följande delar kan…","html":"<span id=\"django-utils\"></span><h1>Django Verktyg<a class=\"heading-anchor\" href=\"#module-django.utils\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Detta dokument täcker alla stabila moduler i <code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils</span></code>. De flesta av modulerna i <code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils</span></code> är utformade för internt bruk och endast följande delar kan betraktas som stabila och därmed bakåtkompatibla enligt <a class=\"reference internal\" href=\"/sv/6.1/internals/release-process/#internal-release-deprecation-policy\"><span class=\"std std-ref\">internal release deprecation policy</span></a>.</p>\n<section id=\"module-django.utils.cache\">\n<span id=\"django-utils-cache\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.cache</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.cache\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Denna modul innehåller hjälpfunktioner för att kontrollera HTTP-cachning. Detta görs genom att hantera <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code>-headern i svaren. Den innehåller funktioner för att patcha svarsobjektens header direkt och dekoratorer som ändrar funktioner så att de själva gör header-patchningen.</p>\n<p>För information om rubriken <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code>, se <span class=\"target\" id=\"index-15\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc9110.html#avsnitt-12.5.5\"><strong>RFC 9110#avsnitt-12.5.5</strong></a>.</p>\n<p>I huvudsak definierar HTTP-headern <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code> vilka headers en cache ska ta hänsyn till när den bygger sin cache-nyckel. Förfrågningar med samma sökväg men olika rubrikinnehåll för rubriker som namnges i <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code> måste få olika cache-nycklar för att förhindra leverans av fel innehåll.</p>\n<p>Exempelvis skulle <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/\"><span class=\"doc\">internationization</span></a> middleware behöva skilja cacher åt genom <code class=\"docutils literal notranslate\"><span class=\"pre\">Accept-language</span></code>-headern.</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.patch_cache_control\">\n<span class=\"sig-name descname\"><span class=\"pre\">patch_cache_control</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">response</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.utils.cache.patch_cache_control\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Denna funktion patchar <code class=\"docutils literal notranslate\"><span class=\"pre\">Cache-Control</span></code>-headern genom att lägga till alla nyckelordsargument till den. Omvandlingen är som följer:</p>\n<ul class=\"simple\">\n<li><p>Alla parameternamn för nyckelord ändras till gemener och understrykningar konverteras till bindestreck.</p></li>\n<li><p>Om värdet på en parameter är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> (exakt <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, inte bara ett sant värde), läggs endast parameternamnet till i sidhuvudet.</p></li>\n<li><p>Alla andra parametrar läggs till med sitt värde, efter att ha applicerat <code class=\"docutils literal notranslate\"><span class=\"pre\">str()</span></code> på det.</p></li>\n</ul>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.get_max_age\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_max_age</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">response</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.cache.get_max_age\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar max-age från svarets Cache-Control-huvud som ett heltal (eller <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> om det inte hittades eller inte var ett heltal).</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.patch_response_headers\">\n<span class=\"sig-name descname\"><span class=\"pre\">patch_response_headers</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">response</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">cache_timeout</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.utils.cache.patch_response_headers\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägger till några användbara rubriker till det givna <code class=\"docutils literal notranslate\"><span class=\"pre\">HttpResponse</span></code>-objektet:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Utgångsdatum</span></code></p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Cache-Control</span></code></p></li>\n</ul>\n<p>Varje rubrik läggs bara till om den inte redan är inställd.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">cache_timeout</span></code> anges i sekunder. Inställningen <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-CACHE_MIDDLEWARE_SECONDS\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">CACHE_MIDDLEWARE_SECONDS</span></code></a> används som standard.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.add_never_cache_headers\">\n<span class=\"sig-name descname\"><span class=\"pre\">add_never_cache_headers</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">response</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.cache.add_never_cache_headers\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägger till en <code class=\"docutils literal notranslate\"><span class=\"pre\">Expires</span></code>-rubrik till aktuellt datum/tid.</p>\n<p>Lägger till en <code class=\"docutils literal notranslate\"><span class=\"pre\">Cache-Control:</span> <span class=\"pre\">max-age=0,</span> <span class=\"pre\">no-cache,</span> <span class=\"pre\">no-store,</span> <span class=\"pre\">must-revalidate,</span> <span class=\"pre\">private</span></code> header till ett svar för att ange att en sida aldrig ska cachas.</p>\n<p>Varje rubrik läggs bara till om den inte redan är inställd.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.patch_vary_headers\">\n<span class=\"sig-name descname\"><span class=\"pre\">patch_vary_headers</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">response</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">newheaders</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.cache.patch_vary_headers\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägger till (eller uppdaterar) <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code>-headern i det givna <code class=\"docutils literal notranslate\"><span class=\"pre\">HttpResponse</span></code>-objektet. <code class=\"docutils literal notranslate\"><span class=\"pre\">newheaders</span></code> är en lista med headernamn som bör finnas i <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code>. Om headers innehåller en asterisk, då kommer <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code> header att bestå av en enda asterisk <code class=\"docutils literal notranslate\"><span class=\"pre\">'*'</span></code>, enligt <span class=\"target\" id=\"index-16\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc9110.html#section-12.5.5\"><strong>RFC 9110 Section 12.5.5</strong></a>. Annars tas inte befintliga rubriker i <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code> bort.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.get_cache_key\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_cache_key</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">key_prefix</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=\"n\"><span class=\"pre\">method</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'GET'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">cache</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.utils.cache.get_cache_key\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en cache-nyckel baserad på sökvägen för begäran. Den kan användas i begärandefasen eftersom den hämtar listan över rubriker att ta hänsyn till från det globala sökvägsregistret och använder dem för att bygga en cachekod att kontrollera mot.</p>\n<p>Om det inte finns någon headerlist lagrad måste sidan byggas om, så denna funktion returnerar <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.cache.learn_cache_key\">\n<span class=\"sig-name descname\"><span class=\"pre\">learn_cache_key</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">response</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">cache_timeout</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=\"n\"><span class=\"pre\">key_prefix</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=\"n\"><span class=\"pre\">cache</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.utils.cache.learn_cache_key\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lär sig vilka rubriker som ska tas hänsyn till för en viss sökväg från svarsobjektet. Det lagrar dessa rubriker i ett globalt sökvägsregister så att senare åtkomst till sökvägen vet vilka rubriker som ska beaktas utan att bygga själva svarsobjektet. Rubrikerna namnges i <code class=\"docutils literal notranslate\"><span class=\"pre\">Vary</span></code>-rubriken i svaret, men vi vill förhindra att svaret genereras.</p>\n<p>Listan över rubriker som ska användas för att generera cache-nyckeln lagras i samma cache som själva sidorna. Om cachen åldrar vissa data ur cachen innebär det att vi måste bygga svaret en gång för att komma åt Vary-rubriken och därmed listan över rubriker som ska användas för cachekoden.</p>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.dateparse\">\n<span id=\"django-utils-dateparse\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.dateparse</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.dateparse\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>De funktioner som definieras i denna modul har följande egenskaper:</p>\n<ul class=\"simple\">\n<li><p>De accepterar strängar i ISO 8601 datum/tidsformat (eller några närliggande alternativ) och returnerar objekt från motsvarande klasser i Pythons <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#module-datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a>-modul.</p></li>\n<li><p>De ger upphov till <a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#ValueError\" title=\"(in Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValueError</span></code></a> om deras indata är väl formaterad men inte är ett giltigt datum eller en giltig tid.</p></li>\n<li><p>De returnerar <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> om det inte är väl formaterat alls.</p></li>\n<li><p>De accepterar upp till pikosekundupplösning i indata, men de trunkerar det till mikrosekunder, eftersom det är vad Python stöder.</p></li>\n</ul>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.dateparse.parse_date\">\n<span class=\"sig-name descname\"><span class=\"pre\">parse_date</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.dateparse.parse_date\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Parsar en sträng och returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.date\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime.date</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.dateparse.parse_time\">\n<span class=\"sig-name descname\"><span class=\"pre\">parse_time</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.dateparse.parse_time\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Analyserar en sträng och returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.time\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime.time</span></code></a>.</p>\n<p>UTC-offsets stöds inte; om <code class=\"docutils literal notranslate\"><span class=\"pre\">värde</span></code> beskriver ett sådant är resultatet <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.dateparse.parse_datetime\">\n<span class=\"sig-name descname\"><span class=\"pre\">parse_datetime</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.dateparse.parse_datetime\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Analyserar en sträng och returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code></a>.</p>\n<p>UTC-offset stöds; om <code class=\"docutils literal notranslate\"><span class=\"pre\">värde</span></code> beskriver en sådan, är resultatets <code class=\"docutils literal notranslate\"><span class=\"pre\">tzinfo</span></code>-attribut en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timezone\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime.timezone</span></code></a>-instans.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.dateparse.parse_duration\">\n<span class=\"sig-name descname\"><span class=\"pre\">parse_duration</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.dateparse.parse_duration\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Parsar en sträng och returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timedelta\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime.timedelta</span></code></a>.</p>\n<p>Förväntar sig data i formatet <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;DD</span> <span class=\"pre\">HH:MM:SS.uuuuuu&quot;</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;DD</span> <span class=\"pre\">HH:MM:SS,uuuuuu&quot;</span></code>, eller som anges av ISO 8601 (t.ex. <code class=\"docutils literal notranslate\"><span class=\"pre\">P4DT1H15M20S</span></code> som motsvarar <code class=\"docutils literal notranslate\"><span class=\"pre\">4</span> <span class=\"pre\">1:15:20</span></code>) eller PostgreSQLs dag-tidsintervallformat (t.ex. <code class=\"docutils literal notranslate\"><span class=\"pre\">3</span> <span class=\"pre\">dagar</span> <span class=\"pre\">04:05:06</span></code>).</p>\n<aside class=\"admonition-years-and-months-not-supported admonition\">\n<p class=\"admonition-title\">Years and months not supported</p>\n<p>ISO 8601 years (<code class=\"docutils literal notranslate\"><span class=\"pre\">Y</span></code>) and months (<code class=\"docutils literal notranslate\"><span class=\"pre\">M</span></code>) are unsupported as they\ncannot be represented by <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timedelta\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">timedelta</span></code></a>.</p>\n</aside>\n<aside class=\"version-note version-changed\" data-version=\"6.1\">\n<p class=\"version-note-title\">Changed in Django 6.1</p><p>ISO 8601 duration parsing now supports weeks (<code class=\"docutils literal notranslate\"><span class=\"pre\">PnW</span></code>).</p>\n</aside>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.decorators\">\n<span id=\"django-utils-decorators\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.dekoratorer</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.decorators\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.decorators.method_decorator\">\n<span class=\"sig-name descname\"><span class=\"pre\">method_decorator</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">decorator</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\">''</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.decorators.method_decorator\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar en funktionsdekorator till en metoddekorator. Den kan användas för att dekorera metoder eller klasser; i det senare fallet är <code class=\"docutils literal notranslate\"><span class=\"pre\">name</span></code> namnet på den metod som ska dekoreras och är obligatoriskt.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">decorator</span></code> kan också vara en lista eller en tupel av funktioner. De paketeras i omvänd ordning så att anropsordningen är den ordning i vilken funktionerna visas i listan/tupeln.</p>\n<p>Se <a class=\"reference internal\" href=\"/sv/6.1/topics/class-based-views/intro/#id1\"><span class=\"std std-ref\">Dekorera klassbaserade vyer</span></a> för exempel på användning.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.decorators.decorator_from_middleware\">\n<span class=\"sig-name descname\"><span class=\"pre\">decorator_from_middleware</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">middleware_class</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.decorators.decorator_from_middleware\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Ger en middleware-klass och returnerar en vydekorator. Detta gör att du kan använda middleware-funktionalitet per vy. Mellanvaran skapas utan att några parametrar skickas med.</p>\n<p>Det förutsätter mellanprogram som är kompatibla med den gamla stilen i Django 1.9 och tidigare (med metoder som <code class=\"docutils literal notranslate\"><span class=\"pre\">process_request()</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">process_exception()</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">process_response()</span></code>).</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.decorators.decorator_from_middleware_with_args\">\n<span class=\"sig-name descname\"><span class=\"pre\">decorator_from_middleware_with_args</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">middleware_class</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.decorators.decorator_from_middleware_with_args\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Som <code class=\"docutils literal notranslate\"><span class=\"pre\">decorator_from_middleware</span></code>, men returnerar en funktion som accepterar de argument som ska skickas till middleware_class. Till exempel: skapas <a class=\"reference internal\" href=\"/sv/6.1/topics/cache/#django.views.decorators.cache.cache_page\" title=\"django.views.decorators.cache.cache_page\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">cache_page()</span></code></a>-dekoratorn från <code class=\"docutils literal notranslate\"><span class=\"pre\">CacheMiddleware</span></code> så här:</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=\"n\">cache_page</span> <span class=\"o\">=</span> <span class=\"n\">decorator_from_middleware_with_args</span><span class=\"p\">(</span><span class=\"n\">CacheMiddleware</span><span class=\"p\">)</span>\n\n\n<span class=\"nd\">@cache_page</span><span class=\"p\">(</span><span class=\"mi\">3600</span><span class=\"p\">)</span>\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">my_view</span><span class=\"p\">(</span><span class=\"n\">request</span><span class=\"p\">):</span>\n    <span class=\"k\">pass</span>\n</code></pre></div>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.decorators.sync_only_middleware\">\n<span class=\"sig-name descname\"><span class=\"pre\">sync_only_middleware</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">middleware</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.decorators.sync_only_middleware\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Markerar en mellanvara som <a class=\"reference internal\" href=\"/sv/6.1/topics/http/middleware/#async-middleware\"><span class=\"std std-ref\">synkron endast</span></a>. (Standard i Django, men detta gör att du kan framtidssäkra om standard någonsin ändras i en framtida version)</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.decorators.async_only_middleware\">\n<span class=\"sig-name descname\"><span class=\"pre\">async_only_middleware</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">middleware</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.decorators.async_only_middleware\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Markerar ett mellanprogram som <a class=\"reference internal\" href=\"/sv/6.1/topics/http/middleware/#async-middleware\"><span class=\"std std-ref\">endast asynkront</span></a>. Django kommer att linda in den i en asynkron händelseslinga när den anropas från WSGI-begärandesökvägen.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.decorators.sync_and_async_middleware\">\n<span class=\"sig-name descname\"><span class=\"pre\">sync_and_async_middleware</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">middleware</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.decorators.sync_and_async_middleware\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Markerar en mellanvara som <a class=\"reference internal\" href=\"/sv/6.1/topics/http/middleware/#async-middleware\"><span class=\"std std-ref\">sync och async kompatibel</span></a>, detta gör att man kan undvika att konvertera förfrågningar. Du måste implementera detektering av den aktuella förfrågningstypen för att använda denna dekorator. Se <a class=\"reference internal\" href=\"/sv/6.1/topics/http/middleware/#async-middleware\"><span class=\"std std-ref\">dokumentation för asynkrona mellanprogram</span></a> för detaljer.</p>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.encoding\">\n<span id=\"django-utils-encoding\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.encoding</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.encoding\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.smart_str\">\n<span class=\"sig-name descname\"><span class=\"pre\">smart_str</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">encoding</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'utf-8'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">strings_only</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">errors</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'strict'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.smart_str\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar ett <code class=\"docutils literal notranslate\"><span class=\"pre\">str</span></code>-objekt som representerar ett godtyckligt objekt <code class=\"docutils literal notranslate\"><span class=\"pre\">s</span></code>. Behandlar bytestrings med hjälp av codec <code class=\"docutils literal notranslate\"><span class=\"pre\">encoding</span></code>.</p>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">strings_only</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, konvertera inte (vissa) icke strängliknande objekt.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.is_protected_type\">\n<span class=\"sig-name descname\"><span class=\"pre\">is_protected_type</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">obj</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.is_protected_type\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Avgör om objektinstansen är av en skyddad typ.</p>\n<p>Objekt av skyddade typer bevaras som de är när de skickas till <code class=\"docutils literal notranslate\"><span class=\"pre\">force_str(strings_only=True)</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.force_str\">\n<span class=\"sig-name descname\"><span class=\"pre\">force_str</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">encoding</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'utf-8'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">strings_only</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">errors</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'strict'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.force_str\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Liknar <code class=\"docutils literal notranslate\"><span class=\"pre\">smart_str()</span></code>, förutom att lata instanser löses upp till strängar i stället för att behållas som lata objekt.</p>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">strings_only</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, konvertera inte (vissa) icke strängliknande objekt.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.smart_bytes\">\n<span class=\"sig-name descname\"><span class=\"pre\">smart_bytes</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">encoding</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'utf-8'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">strings_only</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">errors</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'strict'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.smart_bytes\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en bytestringversion av godtyckligt objekt <code class=\"docutils literal notranslate\"><span class=\"pre\">s</span></code>, kodat enligt specifikationen i <code class=\"docutils literal notranslate\"><span class=\"pre\">encoding</span></code>.</p>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">strings_only</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, konvertera inte (vissa) icke strängliknande objekt.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.force_bytes\">\n<span class=\"sig-name descname\"><span class=\"pre\">force_bytes</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">encoding</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'utf-8'</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">strings_only</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">errors</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'strict'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.force_bytes\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Liknar <code class=\"docutils literal notranslate\"><span class=\"pre\">smart_bytes</span></code>, förutom att lata instanser löses upp till bytestrings, i stället för att behållas som lata objekt.</p>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">strings_only</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, konvertera inte (vissa) icke strängliknande objekt.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.iri_to_uri\">\n<span class=\"sig-name descname\"><span class=\"pre\">iri_to_uri</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">iri</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.iri_to_uri\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konvertera en IRI-del (Internationalized Resource Identifier) till en URI-del som är lämplig att inkludera i en URL.</p>\n<p>Detta är algoritmen från avsnitt 3.1 i <span class=\"target\" id=\"index-17\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc3987.html#section-3.1\"><strong>RFC 3987 Section 3.1</strong></a>, något förenklad eftersom indata antas vara en sträng snarare än en godtycklig byteström.</p>\n<p>Tar emot en IRI (sträng eller UTF-8-byte) och returnerar en sträng som innehåller det kodade resultatet.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.uri_to_iri\">\n<span class=\"sig-name descname\"><span class=\"pre\">uri_to_iri</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">uri</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.uri_to_iri\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar en enhetlig resursidentifierare till en internationaliserad resursidentifierare.</p>\n<p>Detta är en algoritm från avsnitt 3.2 i <span class=\"target\" id=\"index-18\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc3987.html#section-3.2\"><strong>RFC 3987 Section 3.2</strong></a>.</p>\n<p>Tar emot en URI i ASCII-bytes och returnerar en sträng som innehåller det kodade resultatet.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.filepath_to_uri\">\n<span class=\"sig-name descname\"><span class=\"pre\">filepath_to_uri</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">path</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.filepath_to_uri\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar en filsystemssökväg till en URI-del som är lämplig att inkludera i en URL. Sökvägen antas vara antingen UTF-8-byte, sträng eller en <a class=\"reference external\" href=\"https://docs.python.org/3/library/pathlib.html#pathlib.Path\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Path</span></code></a>.</p>\n<p>This method will encode certain characters that would normally be\nrecognized as special characters for URIs. Note that this method does not\nencode the ’ character, as it is a valid character within URIs. See\n<code class=\"docutils literal notranslate\"><span class=\"pre\">encodeURIComponent()</span></code> JavaScript function for more details.</p>\n<p>Returnerar en ASCII-sträng som innehåller det kodade resultatet.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.encoding.escape_uri_path\">\n<span class=\"sig-name descname\"><span class=\"pre\">escape_uri_path</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">path</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.encoding.escape_uri_path\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Escapar de osäkra tecknen från sökvägsdelen av en URI (Uniform Resource Identifier).</p>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.feedgenerator\">\n<span id=\"django-utils-feedgenerator\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.feedgenerator</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.feedgenerator\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Exempel på användning:</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=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.utils</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">feedgenerator</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">feed</span> <span class=\"o\">=</span> <span class=\"n\">feedgenerator</span><span class=\"o\">.</span><span class=\"n\">Rss201rev2Feed</span><span class=\"p\">(</span>\n<span class=\"gp\">... </span>    <span class=\"n\">title</span><span class=\"o\">=</span><span class=\"s2\">&quot;Poynter E-Media Tidbits&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span>    <span class=\"n\">link</span><span class=\"o\">=</span><span class=\"s2\">&quot;https://www.poynter.org/tag/e-media-tidbits/&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span>    <span class=\"n\">description</span><span class=\"o\">=</span><span class=\"s2\">&quot;A group blog by the sharpest minds in online media/journalism/publishing.&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span>    <span class=\"n\">language</span><span class=\"o\">=</span><span class=\"s2\">&quot;en&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">feed</span><span class=\"o\">.</span><span class=\"n\">add_item</span><span class=\"p\">(</span>\n<span class=\"gp\">... </span>    <span class=\"n\">title</span><span class=\"o\">=</span><span class=\"s2\">&quot;Hello&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span>    <span class=\"n\">link</span><span class=\"o\">=</span><span class=\"s2\">&quot;https://www.holovaty.com/test/&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span>    <span class=\"n\">description</span><span class=\"o\">=</span><span class=\"s2\">&quot;Testing.&quot;</span><span class=\"p\">,</span>\n<span class=\"gp\">... </span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"k\">with</span> <span class=\"nb\">open</span><span class=\"p\">(</span><span class=\"s2\">&quot;test.rss&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;w&quot;</span><span class=\"p\">)</span> <span class=\"k\">as</span> <span class=\"n\">fp</span><span class=\"p\">:</span>\n<span class=\"gp\">... </span>    <span class=\"n\">feed</span><span class=\"o\">.</span><span class=\"n\">write</span><span class=\"p\">(</span><span class=\"n\">fp</span><span class=\"p\">,</span> <span class=\"s2\">&quot;utf-8&quot;</span><span class=\"p\">)</span>\n<span class=\"gp\">...</span>\n</code></pre></div>\n<p>För att förenkla valet av en generator används <code class=\"docutils literal notranslate\"><span class=\"pre\">feedgenerator.DefaultFeed</span></code> som för närvarande är <code class=\"docutils literal notranslate\"><span class=\"pre\">Rss201rev2Feed</span></code></p>\n<p>For definitions of the different versions of RSS, see <a class=\"reference external\" href=\"https://web.archive.org/web/20110718035220/http://diveintomark.org/archives/2004/02/04/incompatible-rss\">The myth of RSS\ncompatibility</a>.</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.get_tag_uri\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_tag_uri</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">url</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">date</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.get_tag_uri\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Skapar en TagURI.</p>\n<p>See <a class=\"reference external\" href=\"https://web.archive.org/web/20110514113830/http://diveintomark.org/archives/2004/05/28/howto-atom-id\">How to make a good ID in Atom</a>.</p>\n</dd></dl>\n\n<section id=\"stylesheet\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">Stylesheet</span></code><a class=\"heading-anchor\" href=\"#stylesheet\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Stylesheet\">\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\">Stylesheet</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">url</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">mimetype</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">''</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">media</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">'screen'</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Stylesheet\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Representerar en RSS-formatmall.</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Stylesheet.url\">\n<span class=\"sig-name descname\"><span class=\"pre\">url</span></span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Stylesheet.url\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Obligatoriskt argument. Den URL där stilmallen finns.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Stylesheet.mimetype\">\n<span class=\"sig-name descname\"><span class=\"pre\">mimetype</span></span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Stylesheet.mimetype\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>An optional string containing the MIME type of the stylesheet. If not\nspecified, Django will attempt to guess it by using Python’s\n<a class=\"reference external\" href=\"https://docs.python.org/3/library/mimetypes.html#mimetypes.guess_type\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">mimetypes.guess_type()</span></code></a>. Use <code class=\"docutils literal notranslate\"><span class=\"pre\">mimetype=None</span></code> if you don’t\nwant your stylesheet to have a MIME type specified.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Stylesheet.media\">\n<span class=\"sig-name descname\"><span class=\"pre\">media</span></span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Stylesheet.media\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En valfri sträng som kommer att användas som <code class=\"docutils literal notranslate\"><span class=\"pre\">media</span></code>-attribut i stilmallen. Standard är <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;screen&quot;</span></code>. Använd <code class=\"docutils literal notranslate\"><span class=\"pre\">media=None</span></code> om du inte vill att din stilmall ska ha ett <code class=\"docutils literal notranslate\"><span class=\"pre\">media</span></code>-attribut.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"syndicationfeed\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">SyndicationFeed</span></code><a class=\"heading-anchor\" href=\"#syndicationfeed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed\">\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\">SyndicationFeed</span></span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Basklass för alla syndikeringsflöden. Underklasser bör tillhandahålla <code class=\"docutils literal notranslate\"><span class=\"pre\">write()</span></code>.</p>\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.__init__\">\n<span class=\"sig-name descname\"><span class=\"pre\">__init__</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">title</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">link</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">description</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">language</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=\"n\"><span class=\"pre\">author_email</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=\"n\"><span class=\"pre\">author_name</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=\"n\"><span class=\"pre\">author_link</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=\"n\"><span class=\"pre\">subtitle</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=\"n\"><span class=\"pre\">categories</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=\"n\"><span class=\"pre\">feed_url</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=\"n\"><span class=\"pre\">feed_copyright</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=\"n\"><span class=\"pre\">feed_guid</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=\"n\"><span class=\"pre\">ttl</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=\"n\"><span class=\"pre\">stylesheets</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\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.__init__\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Initiera flödet med den angivna ordlistan med metadata, som gäller för hela flödet.</p>\n<p>Eventuella extra nyckelordsargument som du skickar till <code class=\"docutils literal notranslate\"><span class=\"pre\">__init__</span></code> kommer att lagras i <code class=\"docutils literal notranslate\"><span class=\"pre\">self.feed</span></code>.</p>\n<p>Alla parametrar ska vara strängar, utom två:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">categories</span></code> ska vara en sekvens av strängar.</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">stylesheets</span></code> bör vara en sekvens av antingen strängar eller <a class=\"reference internal\" href=\"#django.utils.feedgenerator.Stylesheet\" title=\"django.utils.feedgenerator.Stylesheet\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Stylesheet</span></code></a>-instanser.</p></li>\n</ul>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.add_item\">\n<span class=\"sig-name descname\"><span class=\"pre\">add_item</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">title</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">link</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">description</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">author_email</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=\"n\"><span class=\"pre\">author_name</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=\"n\"><span class=\"pre\">author_link</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=\"n\"><span class=\"pre\">pubdate</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=\"n\"><span class=\"pre\">comments</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=\"n\"><span class=\"pre\">unique_id</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=\"n\"><span class=\"pre\">categories</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">()</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">item_copyright</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=\"n\"><span class=\"pre\">ttl</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=\"n\"><span class=\"pre\">updateddate</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=\"n\"><span class=\"pre\">enclosures</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\">kwargs</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.add_item\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägger till ett objekt i flödet. Alla args förväntas vara strängar utom <code class=\"docutils literal notranslate\"><span class=\"pre\">pubdate</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">updateddate</span></code>, som är <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.datetime</span></code>-objekt, och <code class=\"docutils literal notranslate\"><span class=\"pre\">enclosures</span></code>, som är en lista över <code class=\"docutils literal notranslate\"><span class=\"pre\">Enclosure</span></code>-instanser.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.num_items\">\n<span class=\"sig-name descname\"><span class=\"pre\">num_items</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.num_items\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.root_attributes\">\n<span class=\"sig-name descname\"><span class=\"pre\">root_attributes</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.root_attributes\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar extra attribut att placera på rotelementet (dvs. feed/channel). Anropas från <code class=\"docutils literal notranslate\"><span class=\"pre\">write()</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.add_root_elements\">\n<span class=\"sig-name descname\"><span class=\"pre\">add_root_elements</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">handler</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.add_root_elements\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägger till element i rotelementet (dvs. feed/channel). Anropas från <code class=\"docutils literal notranslate\"><span class=\"pre\">write()</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.add_stylesheets\">\n<span class=\"sig-name descname\"><span class=\"pre\">add_stylesheets</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">self</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">handler</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.add_stylesheets\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägger till information om formatmallar i dokumentet. Anropas från <code class=\"docutils literal notranslate\"><span class=\"pre\">write()</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.item_attributes\">\n<span class=\"sig-name descname\"><span class=\"pre\">item_attributes</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">item</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.item_attributes\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar extra attribut som ska placeras på varje element (t.ex. item/entry).</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.add_item_elements\">\n<span class=\"sig-name descname\"><span class=\"pre\">add_item_elements</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">handler</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">item</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.add_item_elements\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Lägg till element på varje element för objekt (t.ex. objekt/post).</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.write\">\n<span class=\"sig-name descname\"><span class=\"pre\">write</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">outfile</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">encoding</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.write\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Matar ut flödet i den angivna kodningen till <code class=\"docutils literal notranslate\"><span class=\"pre\">outfile</span></code>, som är ett filliknande objekt. Underklasser bör åsidosätta detta.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.writeString\">\n<span class=\"sig-name descname\"><span class=\"pre\">writeString</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">encoding</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.writeString\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar matningen i den angivna kodningen som en sträng.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.SyndicationFeed.latest_post_date\">\n<span class=\"sig-name descname\"><span class=\"pre\">latest_post_date</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.SyndicationFeed.latest_post_date\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar det senaste <code class=\"docutils literal notranslate\"><span class=\"pre\">pubdate</span></code> eller <code class=\"docutils literal notranslate\"><span class=\"pre\">updateddate</span></code> för alla artiklar i flödet. Om inga objekt har något av dessa attribut returneras aktuellt UTC-datum/tid.</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"enclosure\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">Hölje</span></code><a class=\"heading-anchor\" href=\"#enclosure\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Enclosure\">\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\">Enclosure</span></span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Enclosure\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Representerar en RSS-kapsling</p>\n</dd></dl>\n\n</section>\n<section id=\"rssfeed\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">RssFeed</span></code><a class=\"heading-anchor\" href=\"#rssfeed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.RssFeed\">\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\">RssFeed</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">SyndicationFeed</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.RssFeed\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"rss201rev2feed\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">Rss201rev2Feed</span></code><a class=\"heading-anchor\" href=\"#rss201rev2feed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Rss201rev2Feed\">\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\">Rss201rev2Feed</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">RssFeed</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Rss201rev2Feed\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Spec: <a class=\"reference external\" href=\"https://cyber.harvard.edu/rss/rss.html\">https://cyber.harvard.edu/rss/rss.html</a></p>\n</dd></dl>\n\n</section>\n<section id=\"rssuserland091feed\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">RssUserland091Feed</span></code><a class=\"heading-anchor\" href=\"#rssuserland091feed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.RssUserland091Feed\">\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\">RssUserland091Feed</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">RssFeed</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.RssUserland091Feed\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Spec: <a class=\"reference external\" href=\"http://backend.userland.com/rss091\">http://backend.userland.com/rss091</a></p>\n</dd></dl>\n\n</section>\n<section id=\"atom1feed\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">Atom1Feed</span></code><a class=\"heading-anchor\" href=\"#atom1feed\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.feedgenerator.Atom1Feed\">\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\">Atom1Feed</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">SyndicationFeed</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.feedgenerator.Atom1Feed\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Spec: <span class=\"target\" id=\"index-4\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc4287.html\"><strong>RFC 4287</strong></a></p>\n</dd></dl>\n\n</section>\n</section>\n<section id=\"module-django.utils.functional\">\n<span id=\"django-utils-functional\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.functional</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.functional\"><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.utils.functional.cached_property\">\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\">cached_property</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">func</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.functional.cached_property\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Dekoratorn <code class=\"docutils literal notranslate\"><span class=\"pre\">&#64;cached_property</span></code> cachar resultatet av en metod med ett enda <code class=\"docutils literal notranslate\"><span class=\"pre\">self</span></code>-argument som en egenskap. Det cachade resultatet kommer att finnas kvar så länge som instansen gör det, så om instansen skickas runt och funktionen därefter anropas kommer det cachade resultatet att returneras.</p>\n<p>Tänk på ett typiskt fall där en vy kan behöva anropa en modellmetod för att utföra en beräkning, innan modellinstansen placeras i kontexten, där mallen kan anropa metoden en gång till:</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=\"c1\"># the model</span>\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">Person</span><span class=\"p\">(</span><span class=\"n\">models</span><span class=\"o\">.</span><span class=\"n\">Model</span><span class=\"p\">):</span>\n    <span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">friends</span><span class=\"p\">(</span><span class=\"bp\">self</span><span class=\"p\">):</span>\n        <span class=\"c1\"># expensive computation</span>\n        <span class=\"o\">...</span>\n        <span class=\"k\">return</span> <span class=\"n\">friends</span>\n\n\n<span class=\"c1\"># in the view:</span>\n<span class=\"k\">if</span> <span class=\"n\">person</span><span class=\"o\">.</span><span class=\"n\">friends</span><span class=\"p\">():</span>\n    <span class=\"o\">...</span>\n</code></pre></div>\n<p>Och i mallen skulle du ha:</p>\n<div class=\"code-block\" data-language=\"html+django\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Django template</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=\"Django template code\"><code><span class=\"cp\">{%</span> <span class=\"k\">for</span> <span class=\"nv\">friend</span> <span class=\"k\">in</span> <span class=\"nv\">person.friends</span> <span class=\"cp\">%}</span>\n</code></pre></div>\n<p>Här kommer <code class=\"docutils literal notranslate\"><span class=\"pre\">friends()</span></code> att anropas två gånger. Eftersom instansen <code class=\"docutils literal notranslate\"><span class=\"pre\">person</span></code> i vyn och mallen är densamma kan man undvika detta genom att dekorera <code class=\"docutils literal notranslate\"><span class=\"pre\">friends()</span></code>-metoden med <code class=\"docutils literal notranslate\"><span class=\"pre\">&#64;cached_property</span></code>:</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.utils.functional</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">cached_property</span>\n\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">Person</span><span class=\"p\">(</span><span class=\"n\">models</span><span class=\"o\">.</span><span class=\"n\">Model</span><span class=\"p\">):</span>\n    <span class=\"nd\">@cached_property</span>\n    <span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">friends</span><span class=\"p\">(</span><span class=\"bp\">self</span><span class=\"p\">):</span> <span class=\"o\">...</span>\n</code></pre></div>\n<p>Observera att eftersom metoden nu är en egenskap, måste den i Python-koden nås på lämpligt sätt:</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=\"c1\"># in the view:</span>\n<span class=\"k\">if</span> <span class=\"n\">person</span><span class=\"o\">.</span><span class=\"n\">friends</span><span class=\"p\">:</span>\n    <span class=\"o\">...</span>\n</code></pre></div>\n<p>Det cachade värdet kan behandlas som ett vanligt attribut för instansen:</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=\"c1\"># clear it, requiring re-computation next time it&#39;s called</span>\n<span class=\"n\">person</span><span class=\"o\">.</span><span class=\"vm\">__dict__</span><span class=\"o\">.</span><span class=\"n\">pop</span><span class=\"p\">(</span><span class=\"s2\">&quot;friends&quot;</span><span class=\"p\">,</span> <span class=\"kc\">None</span><span class=\"p\">)</span>\n\n<span class=\"c1\"># set a value manually, that will persist on the instance until cleared</span>\n<span class=\"n\">person</span><span class=\"o\">.</span><span class=\"n\">friends</span> <span class=\"o\">=</span> <span class=\"p\">[</span><span class=\"s2\">&quot;Huckleberry Finn&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;Tom Sawyer&quot;</span><span class=\"p\">]</span>\n</code></pre></div>\n<p>Because of the way the <a class=\"reference external\" href=\"https://docs.python.org/3/reference/datamodel.html#descriptor-invocation\" title=\"(in Python v3.14)\"><span class=\"xref std std-ref\">descriptor protocol</span></a> works, using <code class=\"docutils literal notranslate\"><span class=\"pre\">del</span></code> (or <code class=\"docutils literal notranslate\"><span class=\"pre\">delattr</span></code>) on a\n<code class=\"docutils literal notranslate\"><span class=\"pre\">cached_property</span></code> that hasn’t been accessed raises <code class=\"docutils literal notranslate\"><span class=\"pre\">AttributeError</span></code>.</p>\n<p>Förutom att erbjuda potentiella prestandafördelar kan <code class=\"docutils literal notranslate\"><span class=\"pre\">&#64;cached_property</span></code> säkerställa att ett attributs värde inte ändras oväntat under en instants livstid. Detta kan inträffa med en metod vars beräkning baseras på <code class=\"docutils literal notranslate\"><span class=\"pre\">datetime.now()</span></code>, eller om en ändring sparas i databasen av någon annan process under det korta intervallet mellan efterföljande anrop av en metod på samma instans.</p>\n<p>Du kan skapa cachade egenskaper för metoder. Om du till exempel har en dyr metod <code class=\"docutils literal notranslate\"><span class=\"pre\">get_friends()</span></code> och vill tillåta att den anropas utan att hämta det cachade värdet, kan du skriva:</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=\"n\">friends</span> <span class=\"o\">=</span> <span class=\"n\">cached_property</span><span class=\"p\">(</span><span class=\"n\">get_friends</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Medan <code class=\"docutils literal notranslate\"><span class=\"pre\">person.get_friends()</span></code> räknar om vännerna vid varje anrop, kommer värdet på den cachade egenskapen att kvarstå tills du tar bort den enligt beskrivningen ovan:</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=\"n\">x</span> <span class=\"o\">=</span> <span class=\"n\">person</span><span class=\"o\">.</span><span class=\"n\">friends</span>  <span class=\"c1\"># calls first time</span>\n<span class=\"n\">y</span> <span class=\"o\">=</span> <span class=\"n\">person</span><span class=\"o\">.</span><span class=\"n\">get_friends</span><span class=\"p\">()</span>  <span class=\"c1\"># calls again</span>\n<span class=\"n\">z</span> <span class=\"o\">=</span> <span class=\"n\">person</span><span class=\"o\">.</span><span class=\"n\">friends</span>  <span class=\"c1\"># does not call</span>\n<span class=\"n\">x</span> <span class=\"ow\">is</span> <span class=\"n\">z</span>  <span class=\"c1\"># is True</span>\n</code></pre></div>\n</dd></dl>\n\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.functional.classproperty\">\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\">classproperty</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">method</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.utils.functional.classproperty\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Similar to <a class=\"reference external\" href=\"https://docs.python.org/3/library/functions.html#classmethod\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">&#64;classmethod</span></code></a>, the <code class=\"docutils literal notranslate\"><span class=\"pre\">&#64;classproperty</span></code>\ndecorator converts the result of a method with a single <code class=\"docutils literal notranslate\"><span class=\"pre\">cls</span></code> argument\ninto a property that can be accessed directly from the class.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.functional.keep_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">keep_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">func</span></span></em>, <em class=\"sig-param\"><span class=\"o\"><span class=\"pre\">*</span></span><span class=\"n\"><span class=\"pre\">resultclasses</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.functional.keep_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Django erbjuder många verktygsfunktioner (särskilt i <code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils</span></code>) som tar en sträng som sitt första argument och gör något med den strängen. Dessa funktioner används av mallfilter såväl som direkt i annan kod.</p>\n<p>Om du skriver dina egna liknande funktioner och hanterar översättningar kommer du att ställas inför problemet med vad du ska göra när det första argumentet är ett lazy translation-objekt. Du vill inte konvertera det till en sträng omedelbart, eftersom du kanske använder den här funktionen utanför en vy (och därmed kommer den aktuella trådens locale-inställning inte att vara korrekt).</p>\n<p>För fall som detta kan du använda dekoratorn <code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.functional.keep_lazy()</span></code>. Den modifierar funktionen så att <em>om</em> den anropas med en lat översättning som ett av sina argument, fördröjs funktionsutvärderingen tills den behöver konverteras till en sträng.</p>\n<p>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=\"w\"> </span><span class=\"nn\">django.utils.functional</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">keep_lazy</span><span class=\"p\">,</span> <span class=\"n\">keep_lazy_text</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">fancy_utility_function</span><span class=\"p\">(</span><span class=\"n\">s</span><span class=\"p\">,</span> <span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span>\n    <span class=\"c1\"># Do some conversion on string &#39;s&#39;</span>\n    <span class=\"o\">...</span>\n\n\n<span class=\"n\">fancy_utility_function</span> <span class=\"o\">=</span> <span class=\"n\">keep_lazy</span><span class=\"p\">(</span><span class=\"nb\">str</span><span class=\"p\">)(</span><span class=\"n\">fancy_utility_function</span><span class=\"p\">)</span>\n\n\n<span class=\"c1\"># Or more succinctly:</span>\n<span class=\"nd\">@keep_lazy</span><span class=\"p\">(</span><span class=\"nb\">str</span><span class=\"p\">)</span>\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">fancy_utility_function</span><span class=\"p\">(</span><span class=\"n\">s</span><span class=\"p\">,</span> <span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span> <span class=\"o\">...</span>\n</code></pre></div>\n<p>Dekoratorn <code class=\"docutils literal notranslate\"><span class=\"pre\">keep_lazy()</span></code> tar ett antal extra argument (<code class=\"docutils literal notranslate\"><span class=\"pre\">*args</span></code>) som specificerar den eller de typer som den ursprungliga funktionen kan returnera. Ett vanligt användningsfall är att ha funktioner som returnerar text. För dessa kan du skicka typen <code class=\"docutils literal notranslate\"><span class=\"pre\">str</span></code> till <code class=\"docutils literal notranslate\"><span class=\"pre\">keep_lazy</span></code> (eller använda dekoratorn <a class=\"reference internal\" href=\"#django.utils.functional.keep_lazy_text\" title=\"django.utils.functional.keep_lazy_text\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">keep_lazy_text()</span></code></a> som beskrivs i nästa avsnitt).</p>\n<p>Med hjälp av den här dekoratorn kan du skriva din funktion och anta att indata är en korrekt sträng, och sedan lägga till stöd för lata översättningsobjekt i slutet.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.functional.keep_lazy_text\">\n<span class=\"sig-name descname\"><span class=\"pre\">keep_lazy_text</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">func</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.functional.keep_lazy_text\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En genväg till <code class=\"docutils literal notranslate\"><span class=\"pre\">keep_lazy(str)(func)</span></code>.</p>\n<p>Om du har en funktion som returnerar text och du vill kunna ta lata argument medan du fördröjer utvärderingen av dem, kan du använda denna dekorator:</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.utils.functional</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">keep_lazy</span><span class=\"p\">,</span> <span class=\"n\">keep_lazy_text</span>\n\n\n<span class=\"c1\"># Our previous example was:</span>\n<span class=\"nd\">@keep_lazy</span><span class=\"p\">(</span><span class=\"nb\">str</span><span class=\"p\">)</span>\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">fancy_utility_function</span><span class=\"p\">(</span><span class=\"n\">s</span><span class=\"p\">,</span> <span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span> <span class=\"o\">...</span>\n\n\n<span class=\"c1\"># Which can be rewritten as:</span>\n<span class=\"nd\">@keep_lazy_text</span>\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">fancy_utility_function</span><span class=\"p\">(</span><span class=\"n\">s</span><span class=\"p\">,</span> <span class=\"o\">*</span><span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"o\">**</span><span class=\"n\">kwargs</span><span class=\"p\">):</span> <span class=\"o\">...</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.html\">\n<span id=\"django-utils-html\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.html</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.html\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Vanligtvis bör du bygga upp HTML med hjälp av Djangos mallar för att använda dess autoescape-mekanism, med hjälp av verktygen i <a class=\"reference internal\" href=\"#module-django.utils.safestring\" title=\"django.utils.safestring: Functions and classes for working with strings that can be displayed safely without further escaping in HTML.\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">django.utils.safestring</span></code></a> där det är lämpligt. Denna modul tillhandahåller några ytterligare verktyg på låg nivå för att escapa HTML.</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.escape\">\n<span class=\"sig-name descname\"><span class=\"pre\">escape</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">text</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.html.escape\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar den angivna texten med ampersand, citattecken och vinkelparenteser kodade för användning i HTML. Inmatningen är först tvingad till en sträng och utmatningen har <a class=\"reference internal\" href=\"#django.utils.safestring.mark_safe\" title=\"django.utils.safestring.mark_safe\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">mark_safe()</span></code></a> tillämpad.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.conditional_escape\">\n<span class=\"sig-name descname\"><span class=\"pre\">conditional_escape</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">text</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.html.conditional_escape\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Similar to <code class=\"docutils literal notranslate\"><span class=\"pre\">escape()</span></code>, except that it doesn’t operate on pre-escaped\nstrings, so it will not double escape.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.format_html\">\n<span class=\"sig-name descname\"><span class=\"pre\">format_html</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">format_string</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.utils.html.format_html\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Detta liknar <a class=\"reference external\" href=\"https://docs.python.org/3/library/stdtypes.html#str.format\" title=\"(in Python v3.14)\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">str.format()</span></code></a>, förutom att det är lämpligt för att bygga upp HTML-fragment. Det första argumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">format_string</span></code> escapas inte men alla andra args och kwargs passerar genom <a class=\"reference internal\" href=\"#django.utils.html.conditional_escape\" title=\"django.utils.html.conditional_escape\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">conditional_escape()</span></code></a> innan de skickas till <code class=\"docutils literal notranslate\"><span class=\"pre\">str.format()</span></code>. Slutligen har utdata <a class=\"reference internal\" href=\"#django.utils.safestring.mark_safe\" title=\"django.utils.safestring.mark_safe\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">mark_safe()</span></code></a> tillämpats.</p>\n<p>När det gäller att bygga upp små HTML-fragment är den här funktionen att föredra framför stränginterpolering med hjälp av <code class=\"docutils literal notranslate\"><span class=\"pre\">%</span></code> eller <code class=\"docutils literal notranslate\"><span class=\"pre\">str.format()</span></code> direkt, eftersom den tillämpar escaping på alla argument - precis som mallsystemet tillämpar escaping som standard.</p>\n<p>Så istället för att skriva:</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=\"n\">mark_safe</span><span class=\"p\">(</span>\n    <span class=\"s2\">&quot;</span><span class=\"si\">%s</span><span class=\"s2\"> &lt;b&gt;</span><span class=\"si\">%s</span><span class=\"s2\">&lt;/b&gt; </span><span class=\"si\">%s</span><span class=\"s2\">&quot;</span>\n    <span class=\"o\">%</span> <span class=\"p\">(</span>\n        <span class=\"n\">some_html</span><span class=\"p\">,</span>\n        <span class=\"n\">escape</span><span class=\"p\">(</span><span class=\"n\">some_text</span><span class=\"p\">),</span>\n        <span class=\"n\">escape</span><span class=\"p\">(</span><span class=\"n\">some_other_text</span><span class=\"p\">),</span>\n    <span class=\"p\">)</span>\n<span class=\"p\">)</span>\n</code></pre></div>\n<p>Du bör istället använda:</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=\"n\">format_html</span><span class=\"p\">(</span>\n    <span class=\"s2\">&quot;</span><span class=\"si\">{}</span><span class=\"s2\"> &lt;b&gt;</span><span class=\"si\">{}</span><span class=\"s2\">&lt;/b&gt; </span><span class=\"si\">{}</span><span class=\"s2\">&quot;</span><span class=\"p\">,</span>\n    <span class=\"n\">mark_safe</span><span class=\"p\">(</span><span class=\"n\">some_html</span><span class=\"p\">),</span>\n    <span class=\"n\">some_text</span><span class=\"p\">,</span>\n    <span class=\"n\">some_other_text</span><span class=\"p\">,</span>\n<span class=\"p\">)</span>\n</code></pre></div>\n<p>Detta har fördelen att du inte behöver tillämpa <a class=\"reference internal\" href=\"#django.utils.html.escape\" title=\"django.utils.html.escape\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">escape()</span></code></a> på varje argument och riskera en bugg och en XSS-sårbarhet om du glömmer bort ett.</p>\n<p>Observera att även om denna funktion använder <code class=\"docutils literal notranslate\"><span class=\"pre\">str.format()</span></code> för att göra interpoleringen, kommer några av formateringsalternativen som tillhandahålls av <code class=\"docutils literal notranslate\"><span class=\"pre\">str.format()</span></code> (t.ex. nummerformatering) inte att fungera, eftersom alla argument skickas genom <a class=\"reference internal\" href=\"#django.utils.html.conditional_escape\" title=\"django.utils.html.conditional_escape\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">conditional_escape()</span></code></a> som (i slutändan) anropar <a class=\"reference internal\" href=\"#django.utils.encoding.force_str\" title=\"django.utils.encoding.force_str\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">force_str()</span></code></a> på värdena.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.format_html_join\">\n<span class=\"sig-name descname\"><span class=\"pre\">format_html_join</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">sep</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">format_string</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">args_generator</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.html.format_html_join\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En omslutning av <a class=\"reference internal\" href=\"#django.utils.html.format_html\" title=\"django.utils.html.format_html\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">format_html()</span></code></a>, för det vanliga fallet med en grupp argument som behöver formateras med samma formatsträng och sedan sammanfogas med <code class=\"docutils literal notranslate\"><span class=\"pre\">sep</span></code>. <code class=\"docutils literal notranslate\"><span class=\"pre\">sep</span></code> skickas också genom <a class=\"reference internal\" href=\"#django.utils.html.conditional_escape\" title=\"django.utils.html.conditional_escape\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">conditional_escape()</span></code></a>.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">args_generator</span></code> bör vara en iterator som ger argument att skicka till <a class=\"reference internal\" href=\"#django.utils.html.format_html\" title=\"django.utils.html.format_html\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">format_html()</span></code></a>, antingen sekvenser av positionella argument eller mappningar av nyckelordsargument.</p>\n<p>Tupler kan till exempel användas för positionella argument:</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=\"n\">format_html_join</span><span class=\"p\">(</span>\n    <span class=\"s2\">&quot;</span><span class=\"se\">\\n</span><span class=\"s2\">&quot;</span><span class=\"p\">,</span>\n    <span class=\"s2\">&quot;&lt;li&gt;</span><span class=\"si\">{}</span><span class=\"s2\"> </span><span class=\"si\">{}</span><span class=\"s2\">&lt;/li&gt;&quot;</span><span class=\"p\">,</span>\n    <span class=\"p\">((</span><span class=\"n\">u</span><span class=\"o\">.</span><span class=\"n\">first_name</span><span class=\"p\">,</span> <span class=\"n\">u</span><span class=\"o\">.</span><span class=\"n\">last_name</span><span class=\"p\">)</span> <span class=\"k\">for</span> <span class=\"n\">u</span> <span class=\"ow\">in</span> <span class=\"n\">users</span><span class=\"p\">),</span>\n<span class=\"p\">)</span>\n</code></pre></div>\n<p>Eller så kan ordböcker användas för nyckelordsargument:</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=\"n\">format_html_join</span><span class=\"p\">(</span>\n    <span class=\"s2\">&quot;</span><span class=\"se\">\\n</span><span class=\"s2\">&quot;</span><span class=\"p\">,</span>\n    <span class=\"s1\">&#39;&lt;li data-id=&quot;</span><span class=\"si\">{id}</span><span class=\"s1\">&quot;&gt;</span><span class=\"si\">{id}</span><span class=\"s1\"> </span><span class=\"si\">{title}</span><span class=\"s1\">&lt;/li&gt;&#39;</span><span class=\"p\">,</span>\n    <span class=\"p\">({</span><span class=\"s2\">&quot;id&quot;</span><span class=\"p\">:</span> <span class=\"n\">b</span><span class=\"o\">.</span><span class=\"n\">id</span><span class=\"p\">,</span> <span class=\"s2\">&quot;title&quot;</span><span class=\"p\">:</span> <span class=\"n\">b</span><span class=\"o\">.</span><span class=\"n\">title</span><span class=\"p\">}</span> <span class=\"k\">for</span> <span class=\"n\">b</span> <span class=\"ow\">in</span> <span class=\"n\">books</span><span class=\"p\">),</span>\n<span class=\"p\">)</span>\n</code></pre></div>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.json_script\">\n<span class=\"sig-name descname\"><span class=\"pre\">json_script</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">element_id</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=\"n\"><span class=\"pre\">encoder</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.utils.html.json_script\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Escapar alla HTML/XML-specialtecken med deras Unicode-escape, så att värdet är säkert för användning med JavaScript. Omsluter också den undangömda JSON i en <code class=\"docutils literal notranslate\"><span class=\"pre\">&lt;script&gt;</span></code> tagg. Om parametern <code class=\"docutils literal notranslate\"><span class=\"pre\">element_id</span></code> inte är <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> får taggen <code class=\"docutils literal notranslate\"><span class=\"pre\">&lt;script&gt;</span></code> det angivna id:t. Till exempel:</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\">json_script</span><span class=\"p\">({</span><span class=\"s2\">&quot;hello&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;world&quot;</span><span class=\"p\">},</span> <span class=\"n\">element_id</span><span class=\"o\">=</span><span class=\"s2\">&quot;hello-data&quot;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;&lt;script id=&quot;hello-data&quot; type=&quot;application/json&quot;&gt;{&quot;hello&quot;: &quot;world&quot;}&lt;/script&gt;&#39;</span>\n</code></pre></div>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">encoder</span></code>, som som standard är <a class=\"reference internal\" href=\"/sv/6.1/topics/serialization/#django.core.serializers.json.DjangoJSONEncoder\" title=\"django.core.serializers.json.DjangoJSONEncoder\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">django.core.serializers.json.DjangoJSONEncoder</span></code></a>, kommer att användas för att serialisera data. Se <a class=\"reference internal\" href=\"/sv/6.1/topics/serialization/#serialization-formats-json\"><span class=\"std std-ref\">JSON serialization</span></a> för mer information om denna serialiserare.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.strip_tags\">\n<span class=\"sig-name descname\"><span class=\"pre\">strip_tags</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.html.strip_tags\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Försöker ta bort allt som ser ut som en HTML-tagg från strängen, det vill säga allt som finns inom <code class=\"docutils literal notranslate\"><span class=\"pre\">&lt;&gt;</span></code>.</p>\n<p>Absolut INGEN garanti ges för att den resulterande strängen är HTML-säker. Så markera ALDRIG resultatet av ett <code class=\"docutils literal notranslate\"><span class=\"pre\">strip_tags</span></code>-anrop som säkert utan att först escapa det, till exempel med <a class=\"reference internal\" href=\"#django.utils.html.escape\" title=\"django.utils.html.escape\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">escape()</span></code></a>.</p>\n<p>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=\"n\">strip_tags</span><span class=\"p\">(</span><span class=\"n\">value</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">&lt;b&gt;&quot;Joel&lt;/b&gt;</span> <span class=\"pre\">&lt;button&gt;is&lt;/button&gt;</span> <span class=\"pre\">a</span> <span class=\"pre\">&lt;span&gt;slug&lt;/span&gt;&quot;</span></code> kommer returvärdet att vara <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;Joel</span> <span class=\"pre\">is</span> <span class=\"pre\">a</span> <span class=\"pre\">slug&quot;</span></code>.</p>\n<p>Om du letar efter en mer robust lösning kan du överväga att använda ett HTML-rensningsverktyg från tredje part.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.html.html_safe\">\n<span class=\"sig-name descname\"><span class=\"pre\">html_safe</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.html.html_safe\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Metoden <code class=\"docutils literal notranslate\"><span class=\"pre\">__html__()</span></code> på en klass hjälper icke-Django-mallar att upptäcka klasser vars utdata inte kräver HTML-escaping.</p>\n<p>Denna dekorator definierar metoden <code class=\"docutils literal notranslate\"><span class=\"pre\">__html__()</span></code> på den dekorerade klassen genom att omsluta <code class=\"docutils literal notranslate\"><span class=\"pre\">__str__()</span></code> i <a class=\"reference internal\" href=\"#django.utils.safestring.mark_safe\" title=\"django.utils.safestring.mark_safe\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">mark_safe()</span></code></a>. Säkerställ att metoden <code class=\"docutils literal notranslate\"><span class=\"pre\">__str__()</span></code> verkligen returnerar text som inte kräver HTML-escape.</p>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.http\">\n<span id=\"django-utils-http\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.http</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.http\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.urlencode\">\n<span class=\"sig-name descname\"><span class=\"pre\">urlencode</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">query</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">doseq</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.http.urlencode\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En version av Pythons <a class=\"reference external\" href=\"https://docs.python.org/3/library/urllib.parse.html#urllib.parse.urlencode\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">urllib.parse.urlencode()</span></code></a>-funktion som kan arbeta med <code class=\"docutils literal notranslate\"><span class=\"pre\">MultiValueDict</span></code> och värden som inte är strängar.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.http_date\">\n<span class=\"sig-name descname\"><span class=\"pre\">http_date</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">epoch_seconds</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.utils.http.http_date\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Formaterar tiden så att den matchar datumformatet <span class=\"target\" id=\"index-19\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc1123.html#section-5.2.14\"><strong>RFC 1123 Section 5.2.14</strong></a> som anges av HTTP <span class=\"target\" id=\"index-20\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc9110.html#section-5.6.7\"><strong>RFC 9110 Section 5.6.7</strong></a>.</p>\n<p>Accepterar ett flyttal uttryckt i sekunder sedan epoken i UTC - såsom det som matas ut av <code class=\"docutils literal notranslate\"><span class=\"pre\">time.time()</span></code>. Om inställningen är <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, är standardvärdet den aktuella tiden.</p>\n<p>Utmatning av en sträng i formatet <code class=\"docutils literal notranslate\"><span class=\"pre\">Wdy,</span> <span class=\"pre\">DD</span> <span class=\"pre\">Mon</span> <span class=\"pre\">YYYY</span> <span class=\"pre\">HH:MM:SS</span> <span class=\"pre\">GMT</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.content_disposition_header\">\n<span class=\"sig-name descname\"><span class=\"pre\">content_disposition_header</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">as_attachment</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">filename</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.http.content_disposition_header\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konstruerar ett HTTP-huvudvärde för <code class=\"docutils literal notranslate\"><span class=\"pre\">Content-Disposition</span></code> från det givna <code class=\"docutils literal notranslate\"><span class=\"pre\">filnamnet</span></code> enligt specifikationen i <span class=\"target\" id=\"index-21\"></span><a class=\"rfc reference external\" href=\"https://datatracker.ietf.org/doc/html/rfc6266.html\"><strong>RFC 6266</strong></a>. Returnerar <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> om <code class=\"docutils literal notranslate\"><span class=\"pre\">as_attachment</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">filnamn</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, annars returneras en sträng som passar för HTTP-huvudet <code class=\"docutils literal notranslate\"><span class=\"pre\">Content-Disposition</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.base36_to_int\">\n<span class=\"sig-name descname\"><span class=\"pre\">base36_to_int</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.http.base36_to_int\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar en bas 36-sträng till ett heltal.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.int_to_base36\">\n<span class=\"sig-name descname\"><span class=\"pre\">int_to_base36</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">i</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.http.int_to_base36\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar ett positivt heltal till en bas 36-sträng.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.urlsafe_base64_encode\">\n<span class=\"sig-name descname\"><span class=\"pre\">urlsafe_base64_encode</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.http.urlsafe_base64_encode\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Kodar en bytestring till en base64-sträng för användning i URL:er och tar bort eventuella efterföljande likhetstecken.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.http.urlsafe_base64_decode\">\n<span class=\"sig-name descname\"><span class=\"pre\">urlsafe_base64_decode</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.http.urlsafe_base64_decode\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Avkodar en base64-kodad sträng och lägger tillbaka eventuella efterföljande likhetstecken som kan ha tagits bort.</p>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.module_loading\">\n<span id=\"django-utils-module-loading\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.module_loading</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.module_loading\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Funktioner för att arbeta med Python-moduler.</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.module_loading.import_string\">\n<span class=\"sig-name descname\"><span class=\"pre\">import_string</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">dotted_path</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.module_loading.import_string\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Importerar en prickad modulväg och returnerar det attribut/den klass som anges med det sista namnet i sökvägen. Anger <code class=\"docutils literal notranslate\"><span class=\"pre\">ImportError</span></code> om importen misslyckades. 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=\"w\"> </span><span class=\"nn\">django.utils.module_loading</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">import_string</span>\n\n<span class=\"n\">ValidationError</span> <span class=\"o\">=</span> <span class=\"n\">import_string</span><span class=\"p\">(</span><span class=\"s2\">&quot;django.core.exceptions.ValidationError&quot;</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>är likvärdig med:</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.exceptions</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">ValidationError</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.safestring\">\n<span id=\"django-utils-safestring\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.safestring</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.safestring\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Funktioner och klasser för att arbeta med ”säkra strängar”: strängar som kan visas säkert utan ytterligare escaping i HTML. Att markera något som en ”säker sträng” innebär att producenten av strängen redan har förvandlat tecken som inte bör tolkas av HTML-motorn (t.ex. ’&lt;’) till lämpliga enheter.</p>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.utils.safestring.SafeString\">\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\">SafeString</span></span><a class=\"heading-anchor\" href=\"#django.utils.safestring.SafeString\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En <code class=\"docutils literal notranslate\"><span class=\"pre\">str</span></code>-underklass som särskilt har markerats som ”säker” (kräver ingen ytterligare escaping) för HTML-utdata.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.safestring.mark_safe\">\n<span class=\"sig-name descname\"><span class=\"pre\">mark_safe</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">s</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.safestring.mark_safe\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Markera uttryckligen en sträng som säker för (HTML-)utdata. Det returnerade objektet kan användas överallt där en sträng är lämplig.</p>\n<p>Kan anropas flera gånger på en och samma sträng.</p>\n<p>Kan också användas som dekorationsmaterial.</p>\n<p>För att bygga upp fragment av HTML bör du normalt använda <a class=\"reference internal\" href=\"#django.utils.html.format_html\" title=\"django.utils.html.format_html\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.utils.html.format_html()</span></code></a> istället.</p>\n<p>En sträng som är markerad som säker blir osäker igen om den ändras. Till exempel:</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\">mystr</span> <span class=\"o\">=</span> <span class=\"s2\">&quot;&lt;b&gt;Hello World&lt;/b&gt;   &quot;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">mystr</span> <span class=\"o\">=</span> <span class=\"n\">mark_safe</span><span class=\"p\">(</span><span class=\"n\">mystr</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">type</span><span class=\"p\">(</span><span class=\"n\">mystr</span><span class=\"p\">)</span>\n<span class=\"go\">&lt;class &#39;django.utils.safestring.SafeString&#39;&gt;</span>\n\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">mystr</span> <span class=\"o\">=</span> <span class=\"n\">mystr</span><span class=\"o\">.</span><span class=\"n\">strip</span><span class=\"p\">()</span>  <span class=\"c1\"># removing whitespace</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">type</span><span class=\"p\">(</span><span class=\"n\">mystr</span><span class=\"p\">)</span>\n<span class=\"go\">&lt;type &#39;str&#39;&gt;</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.text\">\n<span id=\"django-utils-text\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.text</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.text\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.text.format_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">format_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">format_string</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.utils.text.format_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En version av <a class=\"reference external\" href=\"https://docs.python.org/3/library/stdtypes.html#str.format\" title=\"(in Python v3.14)\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">str.format()</span></code></a> för när <code class=\"docutils literal notranslate\"><span class=\"pre\">format_string</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">args</span></code> och/eller <code class=\"docutils literal notranslate\"><span class=\"pre\">kwargs</span></code> innehåller lata objekt. Det första argumentet är den sträng som ska formateras. 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=\"w\"> </span><span class=\"nn\">django.utils.text</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">format_lazy</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.utils.translation</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">pgettext_lazy</span>\n\n<span class=\"n\">urlpatterns</span> <span class=\"o\">=</span> <span class=\"p\">[</span>\n    <span class=\"n\">path</span><span class=\"p\">(</span>\n        <span class=\"n\">format_lazy</span><span class=\"p\">(</span><span class=\"s2\">&quot;</span><span class=\"si\">{person}</span><span class=\"s2\">/&lt;int:pk&gt;/&quot;</span><span class=\"p\">,</span> <span class=\"n\">person</span><span class=\"o\">=</span><span class=\"n\">pgettext_lazy</span><span class=\"p\">(</span><span class=\"s2\">&quot;URL&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;person&quot;</span><span class=\"p\">)),</span>\n        <span class=\"n\">PersonDetailView</span><span class=\"o\">.</span><span class=\"n\">as_view</span><span class=\"p\">(),</span>\n    <span class=\"p\">),</span>\n<span class=\"p\">]</span>\n</code></pre></div>\n<p>Detta exempel tillåter översättare att översätta en del av URL:en. Om ”person” översätts till ”persona” kommer det reguljära uttrycket att matcha <code class=\"docutils literal notranslate\"><span class=\"pre\">persona/(?P&lt;pk&gt;\\d+)/$</span></code>, t.ex. <code class=\"docutils literal notranslate\"><span class=\"pre\">persona/5/</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.text.slugify\">\n<span class=\"sig-name descname\"><span class=\"pre\">slugify</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">allow_unicode</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.text.slugify\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar en sträng till en URL-slog genom:</p>\n<ol class=\"arabic simple\">\n<li><p>Konverterar till ASCII om <code class=\"docutils literal notranslate\"><span class=\"pre\">allow_unicode</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> (standard).</p></li>\n<li><p>Konvertering till gemener.</p></li>\n<li><p>Ta bort tecken som inte är alfanumeriska, understreck, bindestreck eller blanksteg.</p></li>\n<li><p>Ersätter alla blanksteg eller upprepade streck med enkla streck.</p></li>\n<li><p>Ta bort inledande och avslutande blanksteg, bindestreck och understrykningstecken.</p></li>\n</ol>\n<p>Till exempel:</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\">slugify</span><span class=\"p\">(</span><span class=\"s2\">&quot; Joel is a slug &quot;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;joel-is-a-slug&#39;</span>\n</code></pre></div>\n<p>Om du vill tillåta Unicode-tecken ska du ange <code class=\"docutils literal notranslate\"><span class=\"pre\">allow_unicode=True</span></code>. Ett exempel:</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\">slugify</span><span class=\"p\">(</span><span class=\"s2\">&quot;你好 World&quot;</span><span class=\"p\">,</span> <span class=\"n\">allow_unicode</span><span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;你好-world&#39;</span>\n</code></pre></div>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.timezone\">\n<span id=\"django-utils-timezone\"></span><span id=\"time-zone-selection-functions\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.timezone</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.timezone\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.get_fixed_timezone\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_fixed_timezone</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">offset</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.get_fixed_timezone\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.tzinfo\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">tzinfo</span></code></a>-instans som representerar en tidszon med en fast förskjutning från UTC.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">offset</span></code> är en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.timedelta\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime.timedelta</span></code></a> eller ett heltal i minuter. Använd positiva värden för tidszoner öster om UTC och negativa värden för väster om UTC.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.get_default_timezone\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_default_timezone</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.get_default_timezone\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.tzinfo\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">tzinfo</span></code></a>-instans som representerar <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">standardtidszonen</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.get_default_timezone_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_default_timezone_name</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.get_default_timezone_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar namnet på <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">standardtidszon</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.get_current_timezone\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_current_timezone</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.get_current_timezone\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.tzinfo\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">tzinfo</span></code></a>-instans som representerar <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.get_current_timezone_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_current_timezone_name</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.get_current_timezone_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar namnet på <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.activate\">\n<span class=\"sig-name descname\"><span class=\"pre\">activate</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">timezone</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.activate\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Ställer in <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>. Argumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">timezone</span></code> måste vara en instans av en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.tzinfo\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">tzinfo</span></code></a>-underklass eller ett namn på en tidszon.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.deactivate\">\n<span class=\"sig-name descname\"><span class=\"pre\">deactivate</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.deactivate\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Återställer <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.override\">\n<span class=\"sig-name descname\"><span class=\"pre\">override</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">timezone</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.override\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>This is a Python context manager that sets the <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">current time zone</span></a> on entry with <a class=\"reference internal\" href=\"#django.utils.timezone.activate\" title=\"django.utils.timezone.activate\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">activate()</span></code></a>, and restores\nthe previously active time zone on exit. If the <code class=\"docutils literal notranslate\"><span class=\"pre\">timezone</span></code> argument is\n<code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, the <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">current time zone</span></a> is unset\non entry with <a class=\"reference internal\" href=\"#django.utils.timezone.deactivate\" title=\"django.utils.timezone.deactivate\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">deactivate()</span></code></a> instead.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">override</span></code> kan också användas som en funktionsdekorator.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.localtime\">\n<span class=\"sig-name descname\"><span class=\"pre\">localtime</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</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=\"n\"><span class=\"pre\">timezone</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.utils.timezone.localtime\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Konverterar en medveten <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a> till en annan tidszon, som standard <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n<p>När <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> utelämnas, är standardvärdet <a class=\"reference internal\" href=\"#django.utils.timezone.now\" title=\"django.utils.timezone.now\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">now()</span></code></a>.</p>\n<p>Den här funktionen fungerar inte på naiva datatider; använd <a class=\"reference internal\" href=\"#django.utils.timezone.make_aware\" title=\"django.utils.timezone.make_aware\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">make_aware()</span></code></a> istället.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.localdate\">\n<span class=\"sig-name descname\"><span class=\"pre\">localdate</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</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=\"n\"><span class=\"pre\">timezone</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.utils.timezone.localdate\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Använder <a class=\"reference internal\" href=\"#django.utils.timezone.localtime\" title=\"django.utils.timezone.localtime\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">localtime()</span></code></a> för att konvertera en medveten <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a> till en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime.date\" title=\"(in Python v3.14)\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">date()</span></code></a> i en annan tidszon, som standard <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n<p>När <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> utelämnas, är standardvärdet <a class=\"reference internal\" href=\"#django.utils.timezone.now\" title=\"django.utils.timezone.now\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">now()</span></code></a>.</p>\n<p>Denna funktion fungerar inte på naiva datatider.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.now\">\n<span class=\"sig-name descname\"><span class=\"pre\">now</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.now\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a> som representerar den aktuella tidpunkten. Exakt vad som returneras beror på värdet av <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-USE_TZ\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">USE_TZ</span></code></a>:</p>\n<ul class=\"simple\">\n<li><p>Om <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-USE_TZ\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">USE_TZ</span></code></a> är <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>, kommer detta att vara en <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#naive-vs-aware-datetimes\"><span class=\"std std-ref\">naive</span></a> datatid (dvs. en datatid utan en associerad tidszon) som representerar den aktuella tiden i systemets lokala tidszon.</p></li>\n<li><p>Om <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-USE_TZ\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">USE_TZ</span></code></a> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, kommer detta att vara en <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#naive-vs-aware-datetimes\"><span class=\"std std-ref\">aware</span></a> datatid som representerar den aktuella tiden i UTC. Observera att <a class=\"reference internal\" href=\"#django.utils.timezone.now\" title=\"django.utils.timezone.now\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">now()</span></code></a> alltid kommer att returnera tider i UTC oavsett värdet på <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-TIME_ZONE\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">TIME_ZONE</span></code></a>; du kan använda <a class=\"reference internal\" href=\"#django.utils.timezone.localtime\" title=\"django.utils.timezone.localtime\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">localtime()</span></code></a> för att få tiden i den aktuella tidszonen.</p></li>\n</ul>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.is_aware\">\n<span class=\"sig-name descname\"><span class=\"pre\">is_aware</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.is_aware\"><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\"><span class=\"pre\">True</span></code> om <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är medveten, <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> om den är naiv. Denna funktion förutsätter att <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.is_naive\">\n<span class=\"sig-name descname\"><span class=\"pre\">is_naive</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.timezone.is_naive\"><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\"><span class=\"pre\">True</span></code> om <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är naivt, <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> om det är medvetet. Denna funktion förutsätter att <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är en <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.make_aware\">\n<span class=\"sig-name descname\"><span class=\"pre\">make_aware</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">timezone</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.utils.timezone.make_aware\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en medveten <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a> som representerar samma tidpunkt som <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> i <code class=\"docutils literal notranslate\"><span class=\"pre\">timezone</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är en naiv <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a>. Om <code class=\"docutils literal notranslate\"><span class=\"pre\">timezone</span></code> är satt till <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, är standardvärdet <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.timezone.make_naive\">\n<span class=\"sig-name descname\"><span class=\"pre\">make_naive</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">value</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">timezone</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.utils.timezone.make_naive\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar en naiv <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a> som representerar i <code class=\"docutils literal notranslate\"><span class=\"pre\">timezone</span></code> samma tidpunkt som <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">value</span></code> är en medveten <a class=\"reference external\" href=\"https://docs.python.org/3/library/datetime.html#datetime.datetime\" title=\"(in Python v3.14)\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">datetime</span></code></a>. Om <code class=\"docutils literal notranslate\"><span class=\"pre\">timezone</span></code> är satt till <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>, är standardvärdet <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/timezones/#default-current-time-zone\"><span class=\"std std-ref\">aktuell tidszon</span></a>.</p>\n</dd></dl>\n\n</section>\n<section id=\"module-django.utils.translation\">\n<span id=\"django-utils-translation\"></span><h2><code class=\"docutils literal notranslate\"><span class=\"pre\">django.utils.översättning</span></code><a class=\"heading-anchor\" href=\"#module-django.utils.translation\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>För en fullständig diskussion om användningen av följande, se <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/translation/\"><span class=\"doc\">Översättningsdokumentation</span></a>.</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.gettext\">\n<span class=\"sig-name descname\"><span class=\"pre\">gettext</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.gettext\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Översätter <code class=\"docutils literal notranslate\"><span class=\"pre\">message</span></code> och returnerar det som en sträng.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.pgettext\">\n<span class=\"sig-name descname\"><span class=\"pre\">pgettext</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">context</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.pgettext\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Översätter <code class=\"docutils literal notranslate\"><span class=\"pre\">message</span></code> givet <code class=\"docutils literal notranslate\"><span class=\"pre\">context</span></code> och returnerar det som en sträng.</p>\n<p>För mer information, se <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/translation/#contextual-markers\"><span class=\"std std-ref\">Kontextuella markörer</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.gettext_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">gettext_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.gettext_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.pgettext_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">pgettext_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">context</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.pgettext_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Samma sak som de icke-lata versionerna ovan, men med lat utförande.</p>\n<p>Se <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/translation/#lazy-translations\"><span class=\"std std-ref\">dokumentation för lättsamma översättningar</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.gettext_noop\">\n<span class=\"sig-name descname\"><span class=\"pre\">gettext_noop</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">message</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.gettext_noop\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Markerar strängar för översättning men översätter dem inte nu. Detta kan användas för att lagra strängar i globala variabler som bör förbli på basspråket (eftersom de kan användas externt) och som kommer att översättas senare.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.ngettext\">\n<span class=\"sig-name descname\"><span class=\"pre\">ngettext</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">singular</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">plural</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">number</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.ngettext\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Översätter <code class=\"docutils literal notranslate\"><span class=\"pre\">ingular</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">plural</span></code> och returnerar lämplig sträng baserat på <code class=\"docutils literal notranslate\"><span class=\"pre\">number</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.npgettext\">\n<span class=\"sig-name descname\"><span class=\"pre\">npgettext</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">context</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">singular</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">plural</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">number</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.npgettext\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Översätter <code class=\"docutils literal notranslate\"><span class=\"pre\">ingular</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">plural</span></code> och returnerar lämplig sträng baserat på <code class=\"docutils literal notranslate\"><span class=\"pre\">number</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">context</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.ngettext_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">ngettext_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">singular</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">plural</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">number</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.ngettext_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.npgettext_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">npgettext_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">context</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">singular</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">plural</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">number</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.npgettext_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Samma sak som de icke-lata versionerna ovan, men med lat utförande.</p>\n<p>Se <a class=\"reference internal\" href=\"/sv/6.1/topics/i18n/translation/#lazy-translations\"><span class=\"std std-ref\">dokumentation för lättsamma översättningar</span></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.activate\">\n<span class=\"sig-name descname\"><span class=\"pre\">activate</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">language</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.activate\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Hämtar översättningsobjektet för ett visst språk och aktiverar det som det aktuella översättningsobjektet för den aktuella tråden.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.deactivate\">\n<span class=\"sig-name descname\"><span class=\"pre\">deactivate</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.deactivate\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Avaktiverar det aktiva översättningsobjektet så att ytterligare _-anrop kommer att lösas mot standardöversättningsobjektet igen.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.deactivate_all\">\n<span class=\"sig-name descname\"><span class=\"pre\">deactivate_all</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.deactivate_all\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Gör det aktiva översättningsobjektet till en <code class=\"docutils literal notranslate\"><span class=\"pre\">NullTranslations()</span></code>-instans. Detta är användbart när vi av någon anledning vill att försenade översättningar ska visas som originalsträngen.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.override\">\n<span class=\"sig-name descname\"><span class=\"pre\">override</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">language</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">deactivate</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.override\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>En Python-kontexthanterare som använder <a class=\"reference internal\" href=\"#django.utils.translation.activate\" title=\"django.utils.translation.activate\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.utils.translation.activate()</span></code></a> för att hämta översättningsobjektet för ett visst språk, aktiverar det som översättningsobjekt för den aktuella tråden och återaktiverar det tidigare aktiva språket vid avslut. Eventuellt kan den avaktivera den tillfälliga översättningen vid avslut med <a class=\"reference internal\" href=\"#django.utils.translation.deactivate\" title=\"django.utils.translation.deactivate\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.utils.translation.deactivate()</span></code></a> om argumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">deactivate</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>. Om du skickar <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> som språkargument aktiveras en <code class=\"docutils literal notranslate\"><span class=\"pre\">NullTranslations()</span></code>-instans inom kontexten.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">override</span></code> kan också användas som en funktionsdekorator.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.check_for_language\">\n<span class=\"sig-name descname\"><span class=\"pre\">check_for_language</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">lang_code</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.check_for_language\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Kontrollerar om det finns en global språkfil för den angivna språkkoden (t.ex. ’fr’, ’pt_BR’). Detta används för att avgöra om ett användartillhandahållet språk är tillgängligt.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">lang_code</span></code> has a maximum accepted length of 500 characters. <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>\nis returned if it exceeds this limit, before any language-file lookup.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.get_language\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_language</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.get_language\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returns the currently selected language code. Returns <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> if\ntranslations are temporarily deactivated (by <a class=\"reference internal\" href=\"#django.utils.translation.deactivate_all\" title=\"django.utils.translation.deactivate_all\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">deactivate_all()</span></code></a> or\nwhen <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code> is passed to <a class=\"reference internal\" href=\"#django.utils.translation.override\" title=\"django.utils.translation.override\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">override()</span></code></a>).</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.get_language_bidi\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_language_bidi</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.get_language_bidi\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Returnerar det valda språkets BiDi-layout:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> = layout från vänster till höger</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> = höger till vänster-layout</p></li>\n</ul>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.get_language_from_request\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_language_from_request</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">request</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">check_path</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.get_language_from_request\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Analyserar begäran för att ta reda på vilket språk användaren vill att systemet ska visa. Endast språk som listas i settings.LANGUAGES beaktas. Om användaren begär ett underspråk där vi har ett huvudspråk, skickar vi ut huvudspråket.</p>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">check_path</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code> kontrollerar funktionen först om sökvägen till den begärda URL:en börjar med en språkkod som anges i inställningen <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-LANGUAGES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">LANGUAGES</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.get_supported_language_variant\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_supported_language_variant</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">lang_code</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">strict</span></span><span class=\"o\"><span class=\"pre\">=</span></span><span class=\"default_value\"><span class=\"pre\">False</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.get_supported_language_variant\"><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\"><span class=\"pre\">lang_code</span></code> om den finns i inställningen <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-LANGUAGES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">LANGUAGES</span></code></a>, och väljer eventuellt en mer generisk variant. Till exempel: returneras <code class=\"docutils literal notranslate\"><span class=\"pre\">'es'</span></code> om <code class=\"docutils literal notranslate\"><span class=\"pre\">lang_code</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">'es-ar'</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">'es'</span></code> finns i <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-LANGUAGES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">LANGUAGES</span></code></a> men <code class=\"docutils literal notranslate\"><span class=\"pre\">'es-ar'</span></code> inte gör det.</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">lang_code</span></code> har en maximal accepterad längd på 500 tecken. Ett <a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#LookupError\" title=\"(in Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">LookupError</span></code></a> uppstår om <code class=\"docutils literal notranslate\"><span class=\"pre\">lang_code</span></code> överskrider denna gräns och <code class=\"docutils literal notranslate\"><span class=\"pre\">strict</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>, eller om det inte finns någon generisk variant och <code class=\"docutils literal notranslate\"><span class=\"pre\">strict</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>.</p>\n<p>Om <code class=\"docutils literal notranslate\"><span class=\"pre\">strict</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code> (standard), kan en landsspecifik variant returneras när varken språkkoden eller dess generiska variant hittas. Om till exempel endast <code class=\"docutils literal notranslate\"><span class=\"pre\">'es-co'</span></code> finns i <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-LANGUAGES\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">LANGUAGES</span></code></a>, returneras det för <code class=\"docutils literal notranslate\"><span class=\"pre\">lang_code</span></code> som <code class=\"docutils literal notranslate\"><span class=\"pre\">es'</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">'es-ar'</span></code>. Dessa matchningar returneras inte om <code class=\"docutils literal notranslate\"><span class=\"pre\">strict=True</span></code>.</p>\n<p>Utlöser <a class=\"reference external\" href=\"https://docs.python.org/3/library/exceptions.html#LookupError\" title=\"(in Python v3.14)\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">LookupError</span></code></a> om inget hittas.</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.to_locale\">\n<span class=\"sig-name descname\"><span class=\"pre\">to_locale</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">language</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.to_locale\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Omvandlar ett språknamn (en-us) till ett lokalt namn (en_US).</p>\n</dd></dl>\n\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.utils.translation.templatize\">\n<span class=\"sig-name descname\"><span class=\"pre\">templatize</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">src</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.utils.translation.templatize\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Förvandlar en Django-mall till något som förstås av <code class=\"docutils literal notranslate\"><span class=\"pre\">xgettext</span></code>. Det gör det genom att översätta Django-översättningstaggarna till standard <code class=\"docutils literal notranslate\"><span class=\"pre\">gettext</span></code>-funktionsinbjudningar.</p>\n</dd></dl>\n\n</section>","rootId":"module-django.utils","toc":[{"title":"django.utils.cache","anchor":"module-django.utils.cache","children":[]},{"title":"django.utils.dateparse","anchor":"module-django.utils.dateparse","children":[]},{"title":"django.utils.dekoratorer","anchor":"module-django.utils.decorators","children":[]},{"title":"django.utils.encoding","anchor":"module-django.utils.encoding","children":[]},{"title":"django.utils.feedgenerator","anchor":"module-django.utils.feedgenerator","children":[{"title":"Stylesheet","anchor":"stylesheet","children":[]},{"title":"SyndicationFeed","anchor":"syndicationfeed","children":[]},{"title":"Hölje","anchor":"enclosure","children":[]},{"title":"RssFeed","anchor":"rssfeed","children":[]},{"title":"Rss201rev2Feed","anchor":"rss201rev2feed","children":[]},{"title":"RssUserland091Feed","anchor":"rssuserland091feed","children":[]},{"title":"Atom1Feed","anchor":"atom1feed","children":[]}]},{"title":"django.utils.functional","anchor":"module-django.utils.functional","children":[]},{"title":"django.utils.html","anchor":"module-django.utils.html","children":[]},{"title":"django.utils.http","anchor":"module-django.utils.http","children":[]},{"title":"django.utils.module_loading","anchor":"module-django.utils.module_loading","children":[]},{"title":"django.utils.safestring","anchor":"module-django.utils.safestring","children":[]},{"title":"django.utils.text","anchor":"module-django.utils.text","children":[]},{"title":"django.utils.timezone","anchor":"module-django.utils.timezone","children":[]},{"title":"django.utils.översättning","anchor":"module-django.utils.translation","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"API-referens","url":"/sv/6.1/ref/"}],"prev":{"docname":"ref/urls","title":"django.urls funktioner för användning i URLconfs","url":"/sv/6.1/ref/urls/"},"next":{"docname":"ref/validators","title":"Validerare","url":"/sv/6.1/ref/validators/"},"formats":{"html":"/sv/6.1/ref/utils/","markdown":"/sv/6.1/ref/utils.md","json":"/sv/6.1/ref/utils.json"},"source":"https://github.com/django/django/blob/stable/6.1.x/docs/ref/utils.txt","official":"https://docs.djangoproject.com/sv/6.1/ref/utils/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}