Ich habe mehrere hundert statische HTML-Seiten, mit einer Index-HTML-Seite, die ich in Django bringen muss. Ich kann den einfachsten Weg nicht herausfinden, ich weiß, dass mir etwas Einfaches fehlt. Irgendein Rat? Nichts Besonderes benötigt, nur müssen sie in einem Verzeichnis ablegen und Benutzer zu ihnen navigieren.Einbinden bestehender HTML-Seiten in Django
Antwort
Wenn es sich um statische statische Seiten handelt, die Sie nicht wieder anfassen möchten, dann würde ich Django nicht verwenden. Ich würde sie alle in ein Verzeichnis oder eine Subdomain legen und sie direkt vom Server aus bedienen (wahrscheinlich nginx, vielleicht Apache, was immer Sie verwenden). In der Regel möchten Sie nicht, dass Django statische Ressourcen bereitstellt, sondern dass der Proxyserver diese Dienste bereitstellt.
Du könntest sie nach Django bewegen und sie wie andere Django statische Assets verwalten, wie in der Managing Static Files Documentation beschrieben, aber wenn sie schon da draußen sind, dann gibt es nicht eine Menge Vorteile gegenüber dem Servieren wie oben beschrieben.
Und schließlich, wenn Sie sie vollständig in Ihre Django-Website integrieren möchten, dann sollten Sie wahrscheinlich mit the template documentation beginnen.
Vielen Dank. Ich wusste, dass ich es zu kompliziert machte - ich mag diese Antwort! Danke auch für die anderen Ansätze. –
Sie benötigen einen Blick und eine URL für jedes HTML-Template zu erstellen, werde ich Ihnen ein einfaches Beispiel hier setzen, aber es wird dringend empfohlen, dass Sie django lesen Dokumentation oder ein Tutorial:
Zuerst Sie erstellen eine Ansicht in einer views.py Datei:
from django.http import HttpResponseRedirect
from django.shortcuts import render
from django.views.generic import View
class LoadTemplateView(View):
template_name = ['thenameofyourdjangoapp/yourtemplatename.html']
#You put any code you may need here
def get(self, request, *args, **kwargs):
return render(request, self.template_name)
Dann müssen Sie eine uRL erstellen, die diese Ansicht in einer urls.py Datei lautet:
from django.conf.urls import patterns, url
#Here you import from views the view you created
from .views import LoadTemplateView
urlpatterns = patterns(
url(r'^myurl/$', LoadTemplateView.as_view(), name="load_template"),
)
Last, in Ihrem zu Hause html t sagen lassen emplate Sie diese URL zuweisen zu einem Submit-Button, um es durch den Namen zu nennen gab man es auf urls.py (load_template in diesem Fall):
<html>
<body>
<div>
<a class="option-admin" id="id_go" href ="{% url 'yourdjangoappname:load_template' %}"> Go to template </a>
</body>
</html>
</div>
Wie ich sowieso gesagt, es ist besser, dass Sie die vollständig gelesen sowie Dokumentation:
- 1. django Vorlage von einer anderen App einbinden
- 2. Bestehender Container in StructureMap 4.0
- 3. Umbau bestehender eindeutige Einschränkung
- 4. Wie #in JavaScript einbinden?
- 5. In php.ini einbinden?
- 6. Dylib in Xamarin.Mac einbinden dll
- 7. Video in WordPress nicht einbinden
- 8. Einbinden von Textzeilen in JqGrid
- 9. Einbinden einer System.String in XAML
- 10. JavaScript in GitHub einbinden README.md
- 11. Rails/Refinery CMS: Hinzufügen zu bestehender Anwendung + modifizieren bestehender Code über CMS
- 12. psql: keine Beziehungen gefunden trotz bestehender Beziehungen
- 13. SubSonic-Migrationscode von bestehender db generieren?
- 14. @Autowired RabbitTemplate trotz bestehender @Bean es
- 15. Suchfunktion zu bestehender Google Map hinzufügen
- 16. Aktuellen PDO-Treiber von bestehender Verbindung abrufen?
- 17. css: nach dem Überschreiben bestehender Stile
- 18. Framework zum Strukturieren bestehender JS-Code
- 19. Einbinden in den TCP-Stack in C
- 20. Ein std :: pair einbinden
- 21. Neuer oder bestehender App-Serviceplan in Azure-Bereitstellung
- 22. Wo ist "Projekt von bestehender Quelle erstellen" in Eclipse Indigo?
- 23. So aktualisieren Sie auf der Grundlage bestehender Daten in Mongo
- 24. UILabel-Text in bestehender Zelle kann nicht aktualisiert werden
- 25. Tools/Tipps zur Integration bestehender Java SWT-Projekte in WindowBuilder?
- 26. Bibliotheken von Drittanbietern in C-Anwendungen einbinden
- 27. Einbinden von EasyMotion in Vim Visual Mode
- 28. Einbinden von beliebigem XML in XML
- 29. Ein Bild in eine Firefox-Erweiterung einbinden
- 30. Einbinden in AppInitialize mit WCF-Dienst
das ist eine Aufgabe für den Webserver vor Django laufen ist. –
Diese statischen HTML-Seiten werden zu Ihren Anwendungsvorlagen, Sie müssen immer noch URLs und Ansichten schreiben und dann alle Links auf diesen Seiten aktualisieren, um die URLs wiederzugeben (oder das Vorlagen-Tag zu verwenden). – Sayse