---
title: "Django 1.9.2 versionsinformation"
version: 6.1
locale: sv
source: https://docs.djangoproject.com/sv/6.1/releases/1.9.2/
canonical: https://djangodocs.dev/sv/6.1/releases/1.9.2/
---
# Django 1.9.2 versionsinformation

*1 februari 2016*

Django 1.9.2 åtgärdar en säkerhetsregression i 1.9 och flera buggar i 1.9.1. Den gör också en liten bakåtkompatibel förändring som förhoppningsvis inte påverkar några användare.

## Säkerhetsproblem: Användare med behörigheten ”change” men inte ”add” kan skapa objekt för `ModelAdmin` med `save_as=True`

Om en `ModelAdmin` använder `save_as=True` (inte standard), ger administratören ett alternativ när du redigerar objekt för att ”Spara som ny”. En regression i Django 1.9 förhindrade att den formulärinlämningen gav upphov till ett ”Permission Denied”-fel för användare utan ”add”-behörighet.

## Bakåtkompatibel ändring: `.py-tpl`-filer skrivs om i projekt/app-mallar

Tillägget av viss syntax för Djangos mallspråk till standardmallen för appar i Django 1.9 innebär att dessa filer nu har viss ogiltig Python-syntax. Detta orsakar svårigheter för paketeringssystem som ovillkorligen byte-kompilerar `*.py`-filer.

För att åtgärda detta används nu suffixet `.py-tpl` för de projekt- och appmallfiler som ingår i Django. Suffixet `.py-tpl` ersätts med `.py` av kommandona `startproject` och `startapp`. Till exempel kommer en mall med filnamnet `manage.py-tpl` att skapas som `manage.py`.

Skicka in ett ärende om du har en anpassad projektmall som innehåller `.py-tpl`-filer och tycker att detta beteende är problematiskt.

## Buggrättningar

- Åtgärdade en regression i `ConditionalGetMiddleware` som orsakade att `If-None-Match`-kontroller alltid returnerade HTTP 200 ([#26024](https://code.djangoproject.com/ticket/26024)).
- Åtgärdade en regression som gjorde att objekten ”user-tools” visades på administratörens utloggningssida ([#26035](https://code.djangoproject.com/ticket/26035)).
- Fixade en krasch i översättningssystemet när det aktuella språket inte har några översättningar ([#26046](https://code.djangoproject.com/ticket/26046)).
- Åtgärdade en regression som gjorde att fel dag valdes när admin-kalenderwidgeten öppnades för tidszoner från GMT+0100 till GMT+1200 ([#24980](https://code.djangoproject.com/ticket/24980)).
- Åtgärdade en regression i admins popup-fönster för redigering av relaterad modell som gjorde att ett undangömt värde visades i rullgardinsmenyn i det överordnade fönstret ([#25997](https://code.djangoproject.com/ticket/25997)).
- Fixade en regression i 1.8.8 som orsakade felaktig indexhantering i migreringar på PostgreSQL när man lägger till `db_index=True` eller `unique=True` till ett `CharField` eller `TextField` som redan hade den andra specificerad, eller när man tar bort en av dem från ett fält som hade båda, eller när man lägger till `unique=True` till ett fält som redan listas i `unique_together` ([#26034\`](https://code.djangoproject.com/ticket/26034`)).
- Åtgärdade en regression där definitionen av en relation på en abstrakt modells fält med hjälp av ett strängmodellnamn utan en app\_label inte längre löste referensen till den abstrakta modellens app om modellen användes i en annan applikation ([#25858](https://code.djangoproject.com/ticket/25858)).
- Fixade en krasch när du förstör en befintlig testdatabas på MySQL eller PostgreSQL ([#26096](https://code.djangoproject.com/ticket/26096)).
- Fixad CSRF cookie-kontroll på POST-förfrågningar när `USE_X_FORWARDED_PORT=True` ([#26094](https://code.djangoproject.com/ticket/26094)).
- Fixade en krasch i `QuerySet.order_by()` vid beställning av ett relationsfält i en `ManyToManyField` `through`-modell ([#26092](https://code.djangoproject.com/ticket/26092)).
- Åtgärdade en regression som orsakade ett undantag när man gjorde databasfrågor på SQLite med mer än 2000 parametrar när [`DEBUG`](/sv/6.1/ref/settings/#std-setting-DEBUG) är `True` på distributioner som ökar `SQLITE_MAX_VARIABLE_NUMBER` kompileringstidsgränsen till över 2000, såsom Debian ([#26063](https://code.djangoproject.com/ticket/26063)).
- Fixade en krasch när man använder en omvänd `OneToOneField` i `ModelAdmin.readonly_fields` ([#26060](https://code.djangoproject.com/ticket/26060)).
- En krasch inträffade när kommandot `migrate` anropades i ett testfall med attributet `available_apps` som pekade på en applikation med migreringar inaktiverade med inställningen `MIGRATION_MODULES` ([#26135](https://code.djangoproject.com/ticket/26135)).
- Återställde möjligheten för test- och felsökningsverktyg att avgöra vilken mall en nod kom ifrån, även under mallarv eller inkludering. Före Django 1.9 kunde felsökningsverktyg komma åt mallens ursprung från noden via `Node.token.source[0]`. Detta var ett odokumenterat, privat API. Ursprunget är nu tillgängligt direkt på varje nod med hjälp av attributet `Node.origin` ([#25848\`](https://code.djangoproject.com/ticket/25848`)).
- Åtgärdade en regression i Django 1.8.5 som bröt kopiering av ett `SimpleLazyObject` med `copy.copy()` ([#26122\`](https://code.djangoproject.com/ticket/26122`)).
- Inkluderade alltid `geometry_field` i GeoJSON-serialisatorns utdata oavsett parametern `fields` ([#26138](https://code.djangoproject.com/ticket/26138)).
- Fixade kartwidgetarna `contrib.gis` när `USE_THOUSAND_SEPARATOR=True` används ([#20415](https://code.djangoproject.com/ticket/20415)).
- Gjorde att ogiltiga formulär visade de initiala värdena för deras inaktiverade fält ([#26129](https://code.djangoproject.com/ticket/26129)).
