Rozwiązywanie problemów

Ta strona zawiera porady dotyczące często występujących błędów i problemów podczas rozwijania aplikacji w Django.

Problemy z uruchomieniem django-admin

„polecenie nie zostało znalezione: django-admin

django-admin powinno być na twojej ścieżce systemowej, jeśli zainstalowałeś Django przez python setup.py. Jeśli nie ma go na twojej ścieżce, możesz znaleźć je w site-packages/django/bin, gdzie site-packages jest katalogiem wewnątrz twojej instalacji Pythona. Rozważ stworzenie dowiązania symbolicznego do django-admin z jakiegoś miejsca na twojej ścieżce, takiego jak /usr/local/bin.

Jeśli django-admin nie działa a django-admin.py działa, prawdopodobnie używasz wersji Django, która nie jest zgodna z wersją tej dokumentacji. django-admin zostało wprowadzone w Django 1.7.

Uprawnienia MacOS

Jeśli używasz MacOS, przy próbie uruchomienia django-admin może się wyświetlić komunikat „permission denied”. To dlatego, że w systemach uniksowych takich jak macOS, plik musi być oznaczony jako „wykonywalny” zanim będzie mógł zostać uruchomiony jako program. Aby to zrobić otwórz Terminal.app i wejdź (używając komendy cd) do katalogu, gdzie jest zainstalowany django-admin, następnie uruchom komendę sudo chmod +x django-admin.

Rozmaite

Otrzymuję UnicodeDecodeError. Co robię źle?

Ta klasa błędów występuje, gdy ciąg bitów zawierający sekwencje spoza ASCII jest przekształcany w ciąg znaków Unicode i wskazane kodowanie jest niepoprawne. Wyjście zazwyczaj wygląda w ten sposób:

UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position ?:
ordinal not in range(128)

Rozwiązanie przede wszystkim zależy od kontekstu, jednakże są dwie pułapki powszechnie powodujące ten błąd:

  • Twoim systemowym locale może być domyślne locale ASCII, takie jak locale „C” w systemach uniksopodobnych (można to sprawdzić poleceniem locale). Jeśli tak jest, sprawdź w dokumentacji swojego systemu jak możesz je zmienić na locale UTF-8.

Powiązane zasoby:

Back to Top