[PYTHON] Ich blieb bei Django 1.4 stecken und schrieb ein "Memo" über den absoluten Pfad und den relativen Pfad

Hintergrund

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.

Trotzdem gibt es ein Rätsel

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.

Nachtrag

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

Ich blieb bei Django 1.4 stecken und schrieb ein "Memo" über den absoluten Pfad und den relativen Pfad
Ich blieb stecken, als ich versuchte, einen relativen Pfad mit relative_to () in Python anzugeben
Ich blieb stecken und überprüfte es
Ich habe versucht, pipenv zu verwenden, machen Sie sich also eine Notiz
Ein Memo, das ich schnell in Python geschrieben habe
Ein Memo zum Erstellen einer Django (Python) -Anwendung mit Docker
Ich habe python3.4 in .envrc mit direnv geschrieben und es zugelassen, aber ich habe einen Syntaxfehler erhalten