{"title":"django.urls verktygsfunktioner","version":"6.1","locale":"sv","docname":"ref/urlresolvers","url":"/sv/6.1/ref/urlresolvers/","canonical":"https://djangodocs.dev/sv/6.1/ref/urlresolvers/","summary":"reverse() Link to this heading # Funktionen reverse() kan användas för att returnera en absolut sökvägsreferens för en given vy och valfria parametrar, på liknande…","html":"<span id=\"django-urls-utility-functions\"></span><h1><code class=\"docutils literal notranslate\"><span class=\"pre\">django.urls</span></code> verktygsfunktioner<a class=\"heading-anchor\" href=\"#module-django.urls\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"reverse\">\n<h2><code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code><a class=\"heading-anchor\" href=\"#reverse\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Funktionen <code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code> kan användas för att returnera en absolut sökvägsreferens för en given vy och valfria parametrar, på liknande sätt som taggen <a class=\"reference internal\" href=\"/sv/6.1/ref/templates/builtins/#std-templatetag-url\"><code class=\"xref std std-ttag docutils literal notranslate\"><span class=\"pre\">url</span></code></a>:</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.urls.reverse\">\n<span class=\"sig-name descname\"><span class=\"pre\">reverse</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">viewname</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">urlconf</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\">args</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\">kwargs</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\">current_app</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=\"keyword-only-separator o\"><abbr title=\"Keyword-only parameters separator (PEP 3102)\"><span class=\"pre\">*</span></abbr></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">query</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\">fragment</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.urls.reverse\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">viewname</span></code> kan vara ett <a class=\"reference internal\" href=\"/sv/6.1/topics/http/urls/#naming-url-patterns\"><span class=\"std std-ref\">URL-mönsternamn</span></a> eller det anropsbara vyobjekt som används i URLconf. Till exempel:, med följande <code class=\"docutils literal notranslate\"><span class=\"pre\">url</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\">news</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">views</span>\n\n<span class=\"n\">path</span><span class=\"p\">(</span><span class=\"s2\">&quot;archive/&quot;</span><span class=\"p\">,</span> <span class=\"n\">views</span><span class=\"o\">.</span><span class=\"n\">archive</span><span class=\"p\">,</span> <span class=\"n\">name</span><span class=\"o\">=</span><span class=\"s2\">&quot;news-archive&quot;</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>kan du använda något av följande för att vända URL:en:</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\"># using the named URL</span>\n<span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;news-archive&quot;</span><span class=\"p\">)</span>\n\n<span class=\"c1\"># passing a callable object</span>\n<span class=\"c1\"># (This is discouraged because you can&#39;t reverse namespaced views this way.)</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">news</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">views</span>\n\n<span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"n\">views</span><span class=\"o\">.</span><span class=\"n\">archive</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Om URL:en accepterar argument kan du skicka dem i <code class=\"docutils literal notranslate\"><span class=\"pre\">args</span></code>. 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.urls</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">reverse</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">myview</span><span class=\"p\">(</span><span class=\"n\">request</span><span class=\"p\">):</span>\n    <span class=\"k\">return</span> <span class=\"n\">HttpResponseRedirect</span><span class=\"p\">(</span><span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;arch-summary&quot;</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"mi\">1945</span><span class=\"p\">]))</span>\n</code></pre></div>\n<p>Du kan också skicka <code class=\"docutils literal notranslate\"><span class=\"pre\">kwargs</span></code> i stället för <code class=\"docutils literal notranslate\"><span class=\"pre\">args</span></code>. 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\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;admin:app_list&quot;</span><span class=\"p\">,</span> <span class=\"n\">kwargs</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s2\">&quot;app_label&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;auth&quot;</span><span class=\"p\">})</span>\n<span class=\"go\">&#39;/admin/auth/&#39;</span>\n</code></pre></div>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">args</span></code> och <code class=\"docutils literal notranslate\"><span class=\"pre\">kwargs</span></code> kan inte skickas till <code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code> samtidigt.</p>\n<p>Om ingen matchning kan göras, ger <code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code> upphov till ett <a class=\"reference internal\" href=\"/sv/6.1/ref/exceptions/#django.urls.NoReverseMatch\" title=\"django.urls.NoReverseMatch\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">NoReverseMatch</span></code></a> undantag.</p>\n<p>Funktionen <code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code> kan vända ett stort antal reguljära uttrycksmönster för webbadresser, men inte alla möjliga. Den största begränsningen för närvarande är att mönstret inte kan innehålla alternativa val med hjälp av det vertikala strecket (<code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;|&quot;</span></code>). Du kan mycket väl använda sådana mönster för att matcha mot inkommande webbadresser och skicka dem till visningar, men du kan inte vända sådana mönster.</p>\n<p>Med argumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">current_app</span></code> kan du ge en ledtråd till resolvern som anger vilken applikation den vy som körs för tillfället tillhör. Detta <code class=\"docutils literal notranslate\"><span class=\"pre\">current_app</span></code>-argument används som en ledtråd för att lösa upp applikationsnamnrymder till URL:er på specifika applikationsinstanser, enligt <a class=\"reference internal\" href=\"/sv/6.1/topics/http/urls/#topics-http-reversing-url-namespaces\"><span class=\"std std-ref\">namespaced URL resolution strategy</span></a>.</p>\n<p>Argumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">urlconf</span></code> är URLconf-modulen som innehåller de URL-mönster som ska användas för reversering. Som standard används rot-URLconf för den aktuella tråden.</p>\n<p>Nyckelordsargumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">query</span></code> anger parametrar som ska läggas till i den returnerade URL:en. Det kan acceptera en instans av <a class=\"reference internal\" href=\"/sv/6.1/ref/request-response/#django.http.QueryDict\" title=\"django.http.QueryDict\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">QueryDict</span></code></a> (t.ex. <code class=\"docutils literal notranslate\"><span class=\"pre\">request.GET</span></code>) eller ett värde som är kompatibelt med <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>. Den kodade frågesträngen läggs till den upplösta URL:en, med en <code class=\"docutils literal notranslate\"><span class=\"pre\">?</span></code> som prefix.</p>\n<p>Nyckelordsargumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">fragment</span></code> anger en fragmentidentifierare som ska läggas till i den returnerade URL:en (dvs. efter sökvägen och frågesträngen, föregånget av <code class=\"docutils literal notranslate\"><span class=\"pre\">#</span></code>).</p>\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=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.urls</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">reverse</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;admin:index&quot;</span><span class=\"p\">,</span> <span class=\"n\">query</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s2\">&quot;q&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;biscuits&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;page&quot;</span><span class=\"p\">:</span> <span class=\"mi\">2</span><span class=\"p\">},</span> <span class=\"n\">fragment</span><span class=\"o\">=</span><span class=\"s2\">&quot;results&quot;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;/admin/?q=biscuits&amp;page=2#results&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;admin:index&quot;</span><span class=\"p\">,</span> <span class=\"n\">query</span><span class=\"o\">=</span><span class=\"p\">[(</span><span class=\"s2\">&quot;color&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;blue&quot;</span><span class=\"p\">),</span> <span class=\"p\">(</span><span class=\"s2\">&quot;color&quot;</span><span class=\"p\">,</span> <span class=\"mi\">1</span><span class=\"p\">),</span> <span class=\"p\">(</span><span class=\"s2\">&quot;none&quot;</span><span class=\"p\">,</span> <span class=\"kc\">None</span><span class=\"p\">)])</span>\n<span class=\"go\">&#39;/admin/?color=blue&amp;color=1&amp;none=None&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;admin:index&quot;</span><span class=\"p\">,</span> <span class=\"n\">query</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s2\">&quot;has empty spaces&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;also has empty spaces!&quot;</span><span class=\"p\">})</span>\n<span class=\"go\">&#39;/admin/?has+empty+spaces=also+has+empty+spaces%21&#39;</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;admin:index&quot;</span><span class=\"p\">,</span> <span class=\"n\">fragment</span><span class=\"o\">=</span><span class=\"s2\">&quot;no encoding is done&quot;</span><span class=\"p\">)</span>\n<span class=\"go\">&#39;/admin/#no encoding is done&#39;</span>\n</code></pre></div>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Observera</p>\n<p>Den sträng som returneras av <code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code> är redan <a class=\"reference internal\" href=\"/sv/6.1/ref/unicode/#uri-and-iri-handling\"><span class=\"std std-ref\">urlquoted</span></a>. 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\">reverse</span><span class=\"p\">(</span><span class=\"s2\">&quot;cities&quot;</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"o\">=</span><span class=\"p\">[</span><span class=\"s2\">&quot;Orléans&quot;</span><span class=\"p\">])</span>\n<span class=\"go\">&#39;.../Orl%C3%A9ans/&#39;</span>\n</code></pre></div>\n<p>Att tillämpa ytterligare kodning (t.ex. <a class=\"reference external\" href=\"https://docs.python.org/3/library/urllib.parse.html#urllib.parse.quote\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">urllib.parse.quote()</span></code></a>) på utdata från <code class=\"docutils literal notranslate\"><span class=\"pre\">reverse()</span></code> kan ge oönskade resultat.</p>\n</aside>\n<aside class=\"admonition-reversing-class-based-views-by-view-object admonition\">\n<p class=\"admonition-title\">Omvända klassbaserade åsikter genom att visa objekt</p>\n<p>View-objektet kan också vara resultatet av anropet <a class=\"reference internal\" href=\"/sv/6.1/ref/class-based-views/base/#django.views.generic.base.View.as_view\" title=\"django.views.generic.base.View.as_view\"><code class=\"xref py py-meth docutils literal notranslate\"><span class=\"pre\">as_view()</span></code></a> om samma view-objekt används i URLConf. I enlighet med det ursprungliga exemplet kan vyobjektet definieras som:</p>\n<figure class=\"code-block code-block-captioned\" data-language=\"python\"><figcaption class=\"code-block-caption\"><code class=\"docutils literal notranslate\"><span class=\"pre\">nyheter/views.py</span></code></figcaption>\n<div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python</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 code\"><code> <span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.views</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">View</span>\n\n\n <span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">ArchiveView</span><span class=\"p\">(</span><span class=\"n\">View</span><span class=\"p\">):</span> <span class=\"o\">...</span>\n\n\n <span class=\"n\">archive</span> <span class=\"o\">=</span> <span class=\"n\">ArchiveView</span><span class=\"o\">.</span><span class=\"n\">as_view</span><span class=\"p\">()</span>\n</code></pre></figure>\n<p>Kom dock ihåg att namespaced-vyer inte kan vändas av view-objekt.</p>\n</aside>\n</section>\n<section id=\"reverse-lazy\">\n<h2><code class=\"docutils literal notranslate\"><span class=\"pre\">omvänd_lazy()</span></code><a class=\"heading-anchor\" href=\"#reverse-lazy\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>En lättsamt utvärderad version av <a class=\"reference internal\" href=\"#reverse\">reverse()</a>.</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.urls.reverse_lazy\">\n<span class=\"sig-name descname\"><span class=\"pre\">reverse_lazy</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">viewname</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">urlconf</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\">args</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\">kwargs</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\">current_app</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=\"keyword-only-separator o\"><abbr title=\"Keyword-only parameters separator (PEP 3102)\"><span class=\"pre\">*</span></abbr></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">query</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\">fragment</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.urls.reverse_lazy\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Den är användbar när du behöver använda en URL-reversering innan projektets URLConf har laddats. Några vanliga fall där denna funktion är nödvändig är:</p>\n<ul class=\"simple\">\n<li><p>tillhandahålla en omvänd URL som <code class=\"docutils literal notranslate\"><span class=\"pre\">url</span></code>-attribut för en generisk klassbaserad vy.</p></li>\n<li><p>tillhandahålla en omvänd URL till en dekorator (t.ex. argumentet <code class=\"docutils literal notranslate\"><span class=\"pre\">login_url</span></code> för dekoratorn <a class=\"reference internal\" href=\"/sv/6.1/topics/auth/default/#django.contrib.auth.decorators.permission_required\" title=\"django.contrib.auth.decorators.permission_required\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">django.contrib.auth.decorators.permission_required()</span></code></a>).</p></li>\n<li><p>tillhandahålla en omvänd URL som standardvärde för en parameter i en funktions signatur.</p></li>\n</ul>\n</section>\n<section id=\"resolve\">\n<h2><code class=\"docutils literal notranslate\"><span class=\"pre\">resolve()</span></code><a class=\"heading-anchor\" href=\"#resolve\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Funktionen <code class=\"docutils literal notranslate\"><span class=\"pre\">resolve()</span></code> kan användas för att lösa upp URL-sökvägar till motsvarande vyfunktioner. Den har följande signatur:</p>\n<dl class=\"py function\">\n<dt class=\"sig sig-object py\" id=\"django.urls.resolve\">\n<span class=\"sig-name descname\"><span class=\"pre\">resolve</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">path</span></span></em>, <em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">urlconf</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.urls.resolve\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">path</span></code> är den URL-sökväg du vill lösa. Precis som med <a class=\"reference internal\" href=\"#django.urls.reverse\" title=\"django.urls.reverse\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">reverse()</span></code></a> behöver du inte oroa dig för parametern <code class=\"docutils literal notranslate\"><span class=\"pre\">urlconf</span></code>. Funktionen returnerar ett <a class=\"reference internal\" href=\"#django.urls.ResolverMatch\" title=\"django.urls.ResolverMatch\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ResolverMatch</span></code></a>-objekt som gör att du kan komma åt olika metadata om den upplösta URL:en.</p>\n<p>Om URL:en inte kan lösas, ger funktionen upphov till ett <a class=\"reference internal\" href=\"/sv/6.1/ref/exceptions/#django.urls.Resolver404\" title=\"django.urls.Resolver404\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">Resolver404</span></code></a>-undantag (en underklass till <a class=\"reference internal\" href=\"/sv/6.1/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Http404</span></code></a>) .</p>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch\">\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\">ResolverMatch</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.func\">\n<span class=\"sig-name descname\"><span class=\"pre\">func</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.func\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Den vyfunktion som ska användas för att betjäna URL:en</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.args\">\n<span class=\"sig-name descname\"><span class=\"pre\">args</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.args\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>De argument som ska skickas till view-funktionen, som de tolkats från URL:en.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.kwargs\">\n<span class=\"sig-name descname\"><span class=\"pre\">kwargs</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.kwargs\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Alla nyckelordsargument som ska skickas till vyfunktionen, dvs <a class=\"reference internal\" href=\"#django.urls.ResolverMatch.captured_kwargs\" title=\"django.urls.ResolverMatch.captured_kwargs\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">captured_kwargs</span></code></a> och <a class=\"reference internal\" href=\"#django.urls.ResolverMatch.extra_kwargs\" title=\"django.urls.ResolverMatch.extra_kwargs\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">extra_kwargs</span></code></a>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.captured_kwargs\">\n<span class=\"sig-name descname\"><span class=\"pre\">captured_kwargs</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.captured_kwargs\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>De fångade nyckelordsargument som skulle skickas till visningsfunktionen, som de tolkats från URL:en.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.extra_kwargs\">\n<span class=\"sig-name descname\"><span class=\"pre\">extra_kwargs</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.extra_kwargs\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>De ytterligare nyckelordsargument som ska skickas till view-funktionen.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.url_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">url_name</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.url_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Namnet på det URL-mönster som matchar URL:en.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.route\">\n<span class=\"sig-name descname\"><span class=\"pre\">route</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.route\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Rutten för det matchande URL-mönstret.</p>\n<p>Om till exempel <code class=\"docutils literal notranslate\"><span class=\"pre\">path('users/&lt;id&gt;/',</span> <span class=\"pre\">...)</span></code> är det matchande mönstret kommer <code class=\"docutils literal notranslate\"><span class=\"pre\">route</span></code> att innehålla <code class=\"docutils literal notranslate\"><span class=\"pre\">'users/&lt;id&gt;/'</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.tried\">\n<span class=\"sig-name descname\"><span class=\"pre\">tried</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.tried\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Listan över URL-mönster som provades innan URL:en antingen matchade ett eller uttömde tillgängliga mönster.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.app_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">app_name</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.app_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Applikationens namnrymd för det URL-mönster som matchar URL:en.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.app_names\">\n<span class=\"sig-name descname\"><span class=\"pre\">app_names</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.app_names\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Listan över enskilda namnrymdskomponenter i hela applikationens namnrymd för det URL-mönster som matchar URL:en. Om t.ex. <code class=\"docutils literal notranslate\"><span class=\"pre\">app_name</span></code> är <code class=\"docutils literal notranslate\"><span class=\"pre\">'foo:bar</span></code>, kommer <code class=\"docutils literal notranslate\"><span class=\"pre\">app_names</span></code> att vara <code class=\"docutils literal notranslate\"><span class=\"pre\">['foo',</span> <span class=\"pre\">'bar']</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.namespace\">\n<span class=\"sig-name descname\"><span class=\"pre\">namespace</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.namespace\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Instansnamnrymden för det URL-mönster som matchar URL:en.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.namespaces\">\n<span class=\"sig-name descname\"><span class=\"pre\">namespaces</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.namespaces\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Listan över enskilda namnrymdskomponenter i den fullständiga instansens namnrymd för det URL-mönster som matchar URL:en. dvs. om namnrymden är <code class=\"docutils literal notranslate\"><span class=\"pre\">foo:bar</span></code> kommer namnrymderna att vara <code class=\"docutils literal notranslate\"><span class=\"pre\">['foo',</span> <span class=\"pre\">'bar']</span></code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.urls.ResolverMatch.view_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">view_name</span></span><a class=\"heading-anchor\" href=\"#django.urls.ResolverMatch.view_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Namnet på den vy som matchar URL:en, inklusive namnrymden om det finns en sådan.</p>\n</dd></dl>\n\n</dd></dl>\n\n<p>Ett <a class=\"reference internal\" href=\"#django.urls.ResolverMatch\" title=\"django.urls.ResolverMatch\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ResolverMatch</span></code></a>-objekt kan sedan förfrågas för att ge information om det URL-mönster som matchar en URL:</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\"># Resolve a URL</span>\n<span class=\"n\">match</span> <span class=\"o\">=</span> <span class=\"n\">resolve</span><span class=\"p\">(</span><span class=\"s2\">&quot;/some/path/&quot;</span><span class=\"p\">)</span>\n<span class=\"c1\"># Print the URL pattern that matches the URL</span>\n<span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">match</span><span class=\"o\">.</span><span class=\"n\">url_name</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>Ett <a class=\"reference internal\" href=\"#django.urls.ResolverMatch\" title=\"django.urls.ResolverMatch\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">ResolverMatch</span></code></a>-objekt kan också tilldelas en trippel:</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\">func</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"n\">kwargs</span> <span class=\"o\">=</span> <span class=\"n\">resolve</span><span class=\"p\">(</span><span class=\"s2\">&quot;/some/path/&quot;</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>En möjlig användning av <a class=\"reference internal\" href=\"#django.urls.resolve\" title=\"django.urls.resolve\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">resolve()</span></code></a> skulle vara att testa om en vy skulle ge upphov till ett <code class=\"docutils literal notranslate\"><span class=\"pre\">Http404</span></code>-fel innan den omdirigeras till den:</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\">urllib.parse</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">urlsplit</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.urls</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">resolve</span>\n<span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.http</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">Http404</span><span class=\"p\">,</span> <span class=\"n\">HttpResponseRedirect</span>\n\n\n<span class=\"k\">def</span><span class=\"w\"> </span><span class=\"nf\">myview</span><span class=\"p\">(</span><span class=\"n\">request</span><span class=\"p\">):</span>\n    <span class=\"nb\">next</span> <span class=\"o\">=</span> <span class=\"n\">request</span><span class=\"o\">.</span><span class=\"n\">META</span><span class=\"o\">.</span><span class=\"n\">get</span><span class=\"p\">(</span><span class=\"s2\">&quot;HTTP_REFERER&quot;</span><span class=\"p\">,</span> <span class=\"kc\">None</span><span class=\"p\">)</span> <span class=\"ow\">or</span> <span class=\"s2\">&quot;/&quot;</span>\n    <span class=\"n\">response</span> <span class=\"o\">=</span> <span class=\"n\">HttpResponseRedirect</span><span class=\"p\">(</span><span class=\"nb\">next</span><span class=\"p\">)</span>\n\n    <span class=\"c1\"># modify the request and response as required, e.g. change locale</span>\n    <span class=\"c1\"># and set corresponding locale cookie</span>\n\n    <span class=\"n\">view</span><span class=\"p\">,</span> <span class=\"n\">args</span><span class=\"p\">,</span> <span class=\"n\">kwargs</span> <span class=\"o\">=</span> <span class=\"n\">resolve</span><span class=\"p\">(</span><span class=\"n\">urlsplit</span><span class=\"p\">(</span><span class=\"nb\">next</span><span class=\"p\">)</span><span class=\"o\">.</span><span class=\"n\">path</span><span class=\"p\">)</span>\n    <span class=\"n\">kwargs</span><span class=\"p\">[</span><span class=\"s2\">&quot;request&quot;</span><span class=\"p\">]</span> <span class=\"o\">=</span> <span class=\"n\">request</span>\n    <span class=\"k\">try</span><span class=\"p\">:</span>\n        <span class=\"n\">view</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=\"k\">except</span> <span class=\"n\">Http404</span><span class=\"p\">:</span>\n        <span class=\"k\">return</span> <span class=\"n\">HttpResponseRedirect</span><span class=\"p\">(</span><span class=\"s2\">&quot;/&quot;</span><span class=\"p\">)</span>\n    <span class=\"k\">return</span> <span class=\"n\">response</span>\n</code></pre></div>\n</section>\n<section id=\"get-script-prefix\">\n<h2><code class=\"docutils literal notranslate\"><span class=\"pre\">get_script_prefix()</span></code><a class=\"heading-anchor\" href=\"#get-script-prefix\"><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.urls.get_script_prefix\">\n<span class=\"sig-name descname\"><span class=\"pre\">get_script_prefix</span></span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.urls.get_script_prefix\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Normalt bör du alltid använda <a class=\"reference internal\" href=\"#django.urls.reverse\" title=\"django.urls.reverse\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">reverse()</span></code></a> för att definiera webbadresser i din applikation. Men om din applikation konstruerar en del av URL-hierarkin själv, kan du ibland behöva generera webbadresser. I så fall måste du kunna hitta bas-URL:en för Django-projektet i dess webbserver (normalt tar <a class=\"reference internal\" href=\"#django.urls.reverse\" title=\"django.urls.reverse\"><code class=\"xref py py-func docutils literal notranslate\"><span class=\"pre\">reverse()</span></code></a> hand om detta åt dig). I så fall kan du anropa <code class=\"docutils literal notranslate\"><span class=\"pre\">get_script_prefix()</span></code>, som returnerar skriptprefixdelen av URL:en för ditt Django-projekt. Om ditt Django-projekt ligger i roten på webbservern är detta alltid <code class=\"docutils literal notranslate\"><span class=\"pre\">&quot;/&quot;</span></code>.</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Varning</p>\n<p>Denna funktion <strong>kan</strong> inte** användas utanför request-response-cykeln eftersom den förlitar sig på värden som initieras under den cykeln.</p>\n</aside>\n</section>","rootId":"module-django.urls","toc":[{"title":"reverse()","anchor":"reverse","children":[]},{"title":"omvänd_lazy()","anchor":"reverse-lazy","children":[]},{"title":"resolve()","anchor":"resolve","children":[]},{"title":"get_script_prefix()","anchor":"get-script-prefix","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"API-referens","url":"/sv/6.1/ref/"}],"prev":{"docname":"ref/unicode","title":"Unicode-data","url":"/sv/6.1/ref/unicode/"},"next":{"docname":"ref/urls","title":"django.urls funktioner för användning i URLconfs","url":"/sv/6.1/ref/urls/"},"formats":{"html":"/sv/6.1/ref/urlresolvers/","markdown":"/sv/6.1/ref/urlresolvers.md","json":"/sv/6.1/ref/urlresolvers.json"},"source":"https://github.com/django/django/blob/stable/6.1.x/docs/ref/urlresolvers.txt","official":"https://docs.djangoproject.com/sv/6.1/ref/urlresolvers/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}