Django hibakeresés, bemutató, kód q - egy orosz (ru)
Használata Django Debug eszköztár
Majd kapcsolja be a pályázatot, de légy óvatos - mindig hasznos, hogy más settings.py fájlt az ilyen alkalmazások csak fejleszteni és köztes programok hibakereső eszköz lista:
Debug eszköztár is használ statikus fájlok, így a megfelelő alkalmazást is tartalmaznia kell:
Bizonyos esetekben, akkor is kell telepíteni INTERNAL_IPS a settings.py.
A urls.py. ahogy azt a hivatalos dokumentáció az alábbi kódot kell tartalmaznia hibakeresési panelt útvonal:
Gyűjtsük össze a statikus panel telepítés után:
Ennyi, hibakereső eszköztár jelenik meg a projekt oldalán, amely a különböző hasznos információt a végrehajtási időt, SQL, statikus fájlok, riasztások, és így tovább. D.
Ezen túlmenően, a Django-debug-eszköztár megköveteli, hogy a címkék Content-type: text / html. és
megfelelően jelenik meg.Ha biztos vagy benne, hogy beállította mindent rendesen, de a debug eszköztár továbbra sem jelenik meg: Ezzel a „nukleáris” megoldás, hogy megpróbálja megérteni.
Használata Python hibakereső (PDB)
Ennek legfőbb eszköze egy hibakereső Django EKT-ban. része a Python standard könyvtár.
Init szkriptet
Nézzük meg egy egyszerű script views.py.
konzol parancsot a szerver:
Nyilvánvaló, hogy a Django ZeroDivisionError dob, amikor megpróbálja letölteni az index oldalon, de ha úgy teszünk, mintha a hiba nagyon mélyen a kódot, akkor igazán kellemetlen lehet.
Beállítása töréspont
Szerencsére tudjuk meg egy töréspont figyelemmel kíséri ezt a hibát:
konzol parancsot a szerver EKT-ban:
Most egy töréspont az oldalon lesz az úgynevezett igény (EKT) a héjban, ami szintén fáj a böngésző függő állapotban.
Hibakeresés pdb shell
Itt az ideje, hogy debug ezt a nézetet, kölcsönhatásban a script egy shell:
látjuk az utolsó sorban, hogy a gondolat visszatért az OK választ, és végre rendesen.
Pdb megállítani a ciklus, egyszerűen írja q a shell.
Úgy írásban további dokumentáció, tesztelés, fakitermelés és kijelentések helyett a hibakereső
Hibakeresés időt és erőfeszítést igényel.
- Vedd és fuss teszteket. A Python és Django kiváló beépített teszt környezetben, hogy lehet használni, hogy tesztelje a kódot sokkal gyorsabb, mint kézzel a debugger.
- Írásban a megfelelő dokumentációt a funkciók, osztályok és modulok. PEP 257 és Python stílus útmutató a Google, hogy a jó módszer az írás jó dokstery.
- Használja naplózás megjeleníti az eredményeket a program - a fejlesztés során, és a telepítés után.
- Add érvényesíteni ionok a kódban olyan fontos területeken: csökkenti a kétértelműség megérteni problémák jönnek létre.
Bónusz: Írjon tan integrálni dokumentáció és a tesztelés!
A „állítják False”
Tervezésekor, behelyezésekor a következő sort a kódot:
Ez vezet az a tény, hogy a Django fel AssertionError a megadott érték hibaüzenet ha ezt a vonalat végrehajtásra.
Ha ez megtörténik, az előadás, vagy bármilyen kódot, okozta a képviseletet, és állítsa be DEBUG = True. a böngésző megjeleníti a teljes szint és egy részletes táblázatot Több információra hibakeresés.
Ügyeljen arra, hogy távolítsa el a sort, ha végeztél!