{"title":"Så här uppgraderar du Django till en nyare version","version":"6.1","locale":"sv","docname":"howto/upgrade-version","url":"/sv/6.1/howto/upgrade-version/","canonical":"https://djangodocs.dev/sv/6.1/howto/upgrade-version/","summary":"Att uppgradera Django till den senaste versionen ger flera fördelar: Nya funktioner och förbättringar blir tillgängliga; Buggar är åtgärdade; Äldre…","html":"<h1>Så här uppgraderar du Django till en nyare version<a class=\"heading-anchor\" href=\"#how-to-upgrade-django-to-a-newer-version\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Att uppgradera Django till den senaste versionen ger flera fördelar:</p>\n<ul class=\"simple\">\n<li><p>Nya funktioner och förbättringar blir tillgängliga.</p></li>\n<li><p>Buggar är åtgärdade.</p></li>\n<li><p>Äldre versioner av Django slutar så småningom att få säkerhetsuppdateringar (se <a class=\"reference internal\" href=\"/sv/6.1/internals/release-process/#supported-versions-policy\"><span class=\"std std-ref\">Versioner som stöds</span></a>).</p></li>\n<li><p>Att uppgradera med varje ny utgåva hjälper till att hålla kodbasen aktuell och gör framtida uppgraderingar smidigare.</p></li>\n</ul>\n<aside class=\"admonition-tools-to-help-with-version-upgrades admonition\" role=\"note\">\n<p class=\"admonition-title\">Verktyg för att hjälpa till med versionsuppgraderingar</p>\n<p>Django har ett livligt ekosystem. Det finns automatiska uppgraderingshjälpmedel som lyfts fram på sidan <a class=\"reference external\" href=\"https://www.djangoproject.com/community/ecosystem/#upgrade-utilities\">Gemenskapens ekosystem</a>.</p>\n</aside>\n<p>Här är några saker att tänka på för att göra din uppgraderingsprocess så smidig som möjligt.</p>\n<section id=\"required-reading\">\n<h2>Obligatorisk läsning<a class=\"heading-anchor\" href=\"#required-reading\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Om det är första gången du gör en uppgradering är det bra att läsa <a class=\"reference internal\" href=\"/sv/6.1/internals/release-process/\"><span class=\"doc\">guiden om de olika releaseprocesserna</span></a>.</p>\n<p>Efteråt bör du bekanta dig med de ändringar som gjorts i den nya Django-versionen (eller versionerna):</p>\n<ul class=\"simple\">\n<li><p>Läs <a class=\"reference internal\" href=\"/sv/6.1/releases/\"><span class=\"doc\">versionsinformation</span></a> för varje ”final” utgåva från den som kommer efter din nuvarande Django-version, till och med den version som du planerar att uppgradera till.</p></li>\n<li><p>Titta på <a class=\"reference internal\" href=\"/sv/6.1/internals/deprecation/\"><span class=\"doc\">deprecation timeline</span></a> för relevanta versioner.</p></li>\n</ul>\n<p>Var särskilt uppmärksam på bakåtkompatibla ändringar för att få en klar uppfattning om vad som krävs för en lyckad uppgradering.</p>\n<p>Om du uppgraderar genom mer än en funktionsversion (t.ex. 2.0 till 2.2) är det vanligtvis enklare att uppgradera genom varje funktionsversion stegvis (2.0 till 2.1 till 2.2) än att göra alla ändringar för varje funktionsversion på en gång. För varje funktionsversion ska du använda den senaste patchversionen (t.ex. för 2.1 ska du använda 2.1.15).</p>\n<p>Samma stegvisa uppgraderingsmetod rekommenderas när du uppgraderar från en LTS till nästa.</p>\n</section>\n<section id=\"dependencies\">\n<h2>Beroenden<a class=\"heading-anchor\" href=\"#dependencies\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>I de flesta fall kommer det att vara nödvändigt att uppgradera till den senaste versionen av dina Django-relaterade beroenden också. Om Django-versionen nyligen släpptes eller om vissa av dina beroenden inte är väl underhållna, kanske vissa av dina beroenden ännu inte stöder den nya Django-versionen. I dessa fall kan du behöva vänta tills nya versioner av dina beroenden släpps.</p>\n</section>\n<section id=\"resolving-deprecation-warnings\">\n<h2>Lösning av varningar om föråldring<a class=\"heading-anchor\" href=\"#resolving-deprecation-warnings\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Innan du uppgraderar är det en bra idé att lösa eventuella deprecation-varningar som ditt projekt ger upphov till när du använder din nuvarande version av Django. Genom att åtgärda dessa varningar före uppgraderingen säkerställer du att du är informerad om områden i koden som behöver ändras.</p>\n<p>I Python är deprecation-varningar tysta som standard. Du måste aktivera dem med hjälp av Pythons kommandoradsalternativ <code class=\"docutils literal notranslate\">-Wa</code> eller miljövariabeln <span class=\"target\" id=\"index-2\"></span><a class=\"reference external\" href=\"https://docs.python.org/3/using/cmdline.html#envvar-PYTHONWARNINGS\" title=\"(in Python v3.14)\"><code class=\"xref std std-envvar docutils literal notranslate\">PYTHONWARNINGS</code></a>. Till exempel, för att visa varningar när du kör tester:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-0-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</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=\"Shell code\"><code><span class=\"gp\">$ </span>python -Wa manage.py <span class=\"nb\">test</span>\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-0-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</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=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> py -Wa manage.py test\n</code></pre></div></div></div>\n<p>Om du inte använder Djangos testlöpare kan du också behöva se till att konsolutmatning inte fångas upp, vilket skulle dölja varningar om avskrivning. Till exempel, om du använder <a class=\"reference external\" href=\"https://docs.pytest.org/\">pytest</a>:</p>\n<div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</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=\"Shell code\"><code><span class=\"gp\">$ </span><span class=\"nv\">PYTHONWARNINGS</span><span class=\"o\">=</span>always pytest tests --capture<span class=\"o\">=</span>no\n</code></pre></div>\n<p>Lös eventuella varningar om utfasning med din nuvarande version av Django innan du fortsätter uppgraderingsprocessen.</p>\n<p>Tredjepartsapplikationer kan använda föråldrade API:er för att stödja flera versioner av Django, så varningar om föråldrade API:er i paket som du har installerat behöver inte nödvändigtvis indikera ett problem. Om ett paket inte stöder den senaste versionen av Django, överväg att lyfta ett problem eller skicka en pull-begäran för det.</p>\n</section>\n<section id=\"installation\">\n<h2>Installation<a class=\"heading-anchor\" href=\"#installation\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>När du är redo är det dags att <a class=\"reference internal\" href=\"/sv/6.1/topics/install/\"><span class=\"doc\">installera den nya Django-versionen</span></a>. Om du använder en <a class=\"reference external\" href=\"https://docs.python.org/3/library/venv.html#module-venv\" title=\"(in Python v3.14)\"><code class=\"xref py py-mod docutils literal notranslate\">virtuell miljö</code></a> och det är en stor uppgradering, kanske du vill konfigurera en ny miljö med alla beroenden först.</p>\n<p>Om du installerade Django med <a class=\"reference external\" href=\"https://pip.pypa.io/\">pip</a> kan du använda flaggan <code class=\"docutils literal notranslate\">--upgrade</code> eller <code class=\"docutils literal notranslate\">-U</code>:</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-1-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</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=\"Shell code\"><code><span class=\"gp\">$ </span>python -m pip install -U Django\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-1-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</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=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> py -m pip install -U Django\n</code></pre></div></div></div>\n</section>\n<section id=\"testing\">\n<h2>Testar<a class=\"heading-anchor\" href=\"#testing\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>När den nya miljön är konfigurerad, <a class=\"reference internal\" href=\"/sv/6.1/topics/testing/overview/\"><span class=\"doc\">kör hela testsviten</span></a> för din applikation. Återigen är det användbart att slå på deprecation-varningar så att de visas i testutdata (du kan också använda flaggan om du testar din app manuellt med <code class=\"docutils literal notranslate\">manage.py runserver</code>):</p>\n<div class=\"console\" data-console><div class=\"console-panel\" data-platform=\"unix\"><p class=\"console-label\" id=\"console-2-unix-label\">Linux / macOS</p><div class=\"code-block\" data-language=\"console\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Shell</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=\"Shell code\"><code><span class=\"gp\">$ </span>python -Wa manage.py <span class=\"nb\">test</span>\n</code></pre></div>\n</div><div class=\"console-panel\" data-platform=\"windows\"><p class=\"console-label\" id=\"console-2-windows-label\">Windows</p><div class=\"code-block\" data-language=\"doscon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Windows</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=\"Windows shell\"><code><span class=\"gp\">...\\&gt;</span> py -Wa manage.py test\n</code></pre></div></div></div>\n<p>När du har kört testerna ska du åtgärda eventuella fel. Medan du har versionsinformation färskt i minnet kan det också vara en bra tid att dra nytta av nya funktioner i Django genom att refaktorisera din kod för att eliminera eventuella deprecation-varningar.</p>\n<p>Om du uppgraderar till en alfa-, beta- eller release candidate-version kan du läsa vår guide om <a class=\"reference internal\" href=\"/sv/6.1/internals/contributing/bugs-and-features/#testing-pre-releases\"><span class=\"std std-ref\">Så testar du förhandsutgåvor av Django</span></a> för mer specifika råd om att fånga regressioner och rapportera fel.</p>\n</section>\n<section id=\"deployment\">\n<h2>Utplacering<a class=\"heading-anchor\" href=\"#deployment\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>När du är tillräckligt säker på att din app fungerar med den nya versionen av Django är du redo att gå vidare och <a class=\"reference internal\" href=\"/sv/6.1/howto/deployment/\"><span class=\"doc\">deploy</span></a> ditt uppgraderade Django-projekt.</p>\n<p>Om du använder cachelagring som tillhandahålls av Django bör du överväga att rensa din cache efter uppgradering. Annars kan du stöta på problem, till exempel om du cachelagrar picklade objekt eftersom dessa objekt inte garanteras vara pickle-kompatibla mellan Django-versioner. Ett tidigare fall av inkompatibilitet var cachelagring av inlagda <a class=\"reference internal\" href=\"/sv/6.1/ref/request-response/#django.http.HttpResponse\" title=\"django.http.HttpResponse\"><code class=\"xref py py-class docutils literal notranslate\">HttpResponse</code></a>-objekt, antingen direkt eller indirekt via <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\">cache_page()</code></a>-dekoratorn.</p>\n</section>","rootId":"how-to-upgrade-django-to-a-newer-version","toc":[{"title":"Obligatorisk läsning","anchor":"required-reading","children":[]},{"title":"Beroenden","anchor":"dependencies","children":[]},{"title":"Lösning av varningar om föråldring","anchor":"resolving-deprecation-warnings","children":[]},{"title":"Installation","anchor":"installation","children":[]},{"title":"Testar","anchor":"testing","children":[]},{"title":"Utplacering","anchor":"deployment","children":[]}],"breadcrumbs":[{"docname":"howto/index","title":"Hur man gör-guider","url":"/sv/6.1/howto/"}],"prev":{"docname":"howto/delete-app","title":"Så här tar du bort en Django-applikation","url":"/sv/6.1/howto/delete-app/"},"next":{"docname":"howto/windows","title":"Så här installerar du Django på Windows","url":"/sv/6.1/howto/windows/"},"formats":{"html":"/sv/6.1/howto/upgrade-version/","markdown":"/sv/6.1/howto/upgrade-version.md","json":"/sv/6.1/howto/upgrade-version.json"},"source":"https://github.com/django/django/blob/stable/6.1.x/docs/howto/upgrade-version.txt","official":"https://docs.djangoproject.com/sv/6.1/howto/upgrade-version/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}