Seite 1 von 1

Django - Wohin mit dem/den templates-Ordnern

Verfasst: Mittwoch 6. Dezember 2017, 17:38
von luvlinux
Hallo Leute,

ich habe nun schon einige Django-Tutorials durchgearbeitet und festgestellt, dass der Ordner 'templates' an verschiedenen Orten platziert wird. Also mal im root-Verzeichnis eines Django-projects (wo auch die apps liegen, die man erstellt. Oder auch im app-Ordner, also z. B. polls/templates.

Bei meinem derzeitigen Projekt sieht es so aus: (music ist eine app)
website/music/templates/
Dort liegen dann folgende Dateien: detail.html, index.html etc.

Wenn ich dem Tut glauben soll, dann bedeutet das, dass ich für jede app z. B. website/forum/templates ein Ordner 'templates' anlegen soll.

1. Ist das korrekt bzw. soll man so vorgehen?

2. Muss ich dann für meine Startseite - die ich derzeit über 127.0.0.1:8000/ aufrufe auch eine app (z. b. 'home' ) erstellen?

Würde mich über eure Antwort freuen.

Re: Django - Wohin mit dem/den templates-Ordnern

Verfasst: Mittwoch 6. Dezember 2017, 18:29
von Sirius3
@luvlinux: 1. ja und 2. ja.

Nur /index.html ist ja normalerweise nicht eine komplette App, sondern es gibt eine Hauptanwendung und vielleicht noch ein paar Nebenmodule.

Re: Django - Wohin mit dem/den templates-Ordnern

Verfasst: Donnerstag 7. Dezember 2017, 07:34
von Bolitho
und es ist bei vielen Apps zu überlegen, den Ordneraufbau wie folgt zu machen:

website/music/templates/music/
website/app2/templates/app2/

damit gleichnamige Dateien in verschiedenen Apps sauber angesteuert werden können.

Re: Django - Wohin mit dem/den templates-Ordnern

Verfasst: Donnerstag 7. Dezember 2017, 07:50
von luvlinux
Guten morgen,

vielen Dank für eure Antworten. ich werde dies zukünftig so umsetzen.

Re: Django - Wohin mit dem/den templates-Ordnern

Verfasst: Donnerstag 7. Dezember 2017, 18:37
von kbr
@luvlinux: die Templates innerhalb der einzelnen Apps unterzubringen ist dann sinnvoll, wenn du diese Apps später auch in anderen Projekten einbringen und dazu Standard-Templates mitliefern möchtest. Projekte, bei denen dies nicht der Fall ist, gewinnen deutlich an Übersicht, wenn die Templates alle gemeinsam in einem Verzeichnis (und dort wieder in Unterverzeichnissen) abgelegt werden. Dies gilt insbesondere dann, wenn sie von gemeinsamen Basis-Templates abgeleitet werden.

Re: Django - Wohin mit dem/den templates-Ordnern

Verfasst: Donnerstag 7. Dezember 2017, 18:57
von noisefloor
Hallo,

@kbr: sehe ich nicht so. Bzw. ich sehe den von dir genannten Gewinn an Übersichtlichkeit nicht.

Mal abgesehen davon, dass das Django-Tutorial klar dazu rät, die Templates pro App gem. der im Tutorial angegebenen Verzeichnisstruktur abzulegen.

Gruß, noisefloor

Re: Django - Wohin mit dem/den templates-Ordnern

Verfasst: Sonntag 10. Dezember 2017, 14:44
von kbr
@noisefloor: So gut die django-Dokumentation auch ist, in der Praxis können Abweichungen von einigen "offiziellen Empfehlungen" sinnvoll sein. Bei Anwendungen mit vielen Templates kann es wirklich von Vorteil sein, alle Dateien in einem gemeinsamen Hauptverzeichnis strukturiert abzulegen.