Kodstil - litheblas/blasfisk GitHub Wiki
Innan du skriver och commitar din kod bör du tänka på det som står i det här dokumentet, för framtida utvecklares, systemets och användarnas skull.
Det finns två suveräna formateringsriktlinjer för Python i allmänhet och Django i synnerhet: PEP 8 och Djangos dokumentation om Coding style. Om du bara vill och orkar läsa en rekommenderar jag den sistnämnda – den är kortfattad och tar upp en del av det viktigaste i den första.
Kodens formatering har programmatisk betydelse i Python – framför allt med Django. Det är alltså inte bara en fråga om underhållbarhet och undertecknads anala syn på saken, utan APIet kan bete sig på oväntade sätt. Skriv snygg kod.
Namn på variabler, klasser, funktioner, metoder, dekoratorer, objekt, parametrar, paket, moduler, och allt annat du kan komma på skall vara på engelska. Varför? För att allt annat är fult, svårläst och inkonsekvent.
Alla statiska, läsbara strängar ska skrivas på engelska och markeras som översättningsbara. Det är jättelätt! I t.ex. modeller gör du så här:
- Inkludera följande i varje modul som innehåller översättningsbara strängar:
from django.utils.translation import ugettext_lazy as _
- Istället för att skriva t.ex.
verbose_name='name'
skriver duverbose_name=_('name')
.
Och i mallar/templates så här:
- Ladda i18n-taggar med
{% load i18n %}
. - Istället för att skriva t.ex.
<h2>Address</h2>
skriver du<h2>{% trans 'Address' %}</h2>
.
Mer om detta och hur man går till väga för att faktiskt översätta strängarna finnes här.