Ich habe studiert, um Django zu lernen, aber ich bin über den Weg gestolpert, also dachte ich, dass es dieses Problem sein könnte und untersuchte es.
relative path So rufen Sie eine Datei basierend auf Ihrem aktuellen Verzeichnis auf. Schreiben Sie einen Pfad basierend auf der Landschaft, die Sie von Ihrem Standort aus sehen
Da ich Django praktiziere, werde ich es anhand der folgenden Punkte erklären. Das aktuelle Verzeichnis sieht wie folgt aus.
/Users/Nutzername/Projects/python/dj/mysite
Dies ist die Dateistruktur des mysite-Verzeichnisses.
.
├── books
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── admin.py
│ ├── admin.pyc
│ ├── models.py
│ ├── models.pyc
│ ├── tests.py
│ ├── views.py
│ └── views.pyc
├── manage.py
├── mydb
Jetzt bin ich am ursprünglichen Ort (Mysite-Verzeichnis). Wenn Sie admin.py in Büchern mit einem relativen Pfad aufrufen,
books/admin.py
TU es einfach. Wie einfach ist das
absolute path Schreiben Sie den Pfad basierend auf der Ansicht vom Stammverzeichnis des Computers. Rufen Sie an, egal wo Sie sind.
Verwenden Sie das gleiche Beispiel wie oben.
/Users/Nutzername/Projects/python/dj/mysite
Kurz gesagt, öffnen Sie das Terminal
pwd
Es scheint, dass ich den Pfad betreten werde, der herauskam.
Selbst wenn ich dies untersuchen und beides versuchen würde, könnte ich das Geheimnis des Originals nicht lösen. Obwohl ich in das Verzeichnis gegangen bin, in dem die Vorlage existiert, und sie mit dem richtigen Namen aufgerufen habe
template does not exist
Es war schwer, weiter erzählt zu werden.
Nachdem ich zwei Tage lang nachgeforscht hatte, war ich besorgt
import os
PATH_PROJECT = os.path.realpath(os.path.dirname(__file__))
Und bei TEMPLATE_DIR
PATH_PROJECT + '/templates/'
Ich habe es geschafft, es zu lösen. Es ist immer noch ein Rätsel.
Ich dachte es wäre gelöst! Es scheint, dass die Art und Weise, den Referenzpunkt des absoluten Pfades zu schreiben, anders ist. Wenn Sie also ** pwd ** mit der Shell aufrufen und darauf klicken, geben Sie den Pfad ein, der in TEMPLATE_DIR veröffentlicht wurde, und es wird ein großer Erfolg!
Es gibt Dinge, die zusammengefasst werden können.
Recommended Posts