2009-05-21 11 views
2

Ich habe eine ganze App ziemlich erfolgreich in Django geschrieben, aber ich habe diese quälende Frage, dass ich denke, ich kenne die Antwort, aber ich will nur sicher gehen.Django und generische Ansichten

Eines der Dinge, die ich an Django wirklich mochte, war das Datenmodell und die Fähigkeit, keine "offensichtlichen" Sachen zu machen. Zum Beispiel verwenden wir die Admin-Oberfläche ausgiebig in unserer App. Die Tatsache, dass ich keinen Bearbeitungsbildschirm für jedes Modell schreiben muss und es jedes Mal aktualisieren muss, wenn sich das Modell ändert, ist wirklich nett.

Was mich verwirrt ist, dass ich wollte, dass ein Teil der App "schreibgeschützte" Versionen der Modelle rendert. Im Wesentlichen möchte ich genau das, was ich in der Admin-Oberfläche habe, aber ohne bearbeitbare Widgets. Jetzt merke ich aus dem Django-Code, dass diese Admin-Schnittstelle tatsächlich durchgeht und die Widgets ersetzt, um die editierbaren zu verwenden, so dass ich weiß, dass nicht editierbar ist.

Aber soweit kann ich sagen, es gibt keine Möglichkeit, einfach "dieses Objekt rendern" zu sagen und Django das "offensichtliche" Ding zu machen und es genauso wie für die Admin-Oberfläche zu rendern, aber mit nicht editierbaren Feldern. Ich finde das schwer zu glauben, da es wie folgt aussieht: a) Das ist einfacher als das Admin-Zeug und b) Ich weiß, dass die Widgets schon da sind. Aber ich habe überall nachgesehen und selbst die Django-Beispiele scheinen immer eine Vorlage zu erstellen und genau zu definieren, wie die Seite aussehen soll.

Das Schreiben einer Vorlage ist wahrscheinlich eine gute Idee im Allgemeinen, aber früh in der Entwicklung, wenn sich die Dinge ändern, wäre es besser, etwas zu haben, das aufgrund der im Modell verfügbaren Informationen etwas Grundlegendes tut.

Fehle ich etwas? Tut mir leid, wenn das eine dumme Frage ist.

+0

Ist diese Frage wirklich „Warum gibt es nicht generische Vorlagen für die allgemeine Ansicht Funktionen?“ –

Antwort

3

Könnte es sein, dass die meisten Nicht-Spielzeug-Websites sowieso ein benutzerdefiniertes Layout/HTML wollen?

Oder suchen Sie nach Databrowse?

+1

Ich stimme völlig zu, nicht-Spielzeug-Websites wollen benutzerdefinierte Layout und HTML. Ich erwarte nicht, dass dies für polierte Websites nützlich ist. Ich wünschte nur, ich hätte es in erster Linie für die Entwicklung und sogar in den ungeraden "es ist nicht so wichtig" Fall. Basierend auf einem kurzen Scan der Dokumentation, sieht Databrowse sehr ähnlich aus wie ich gesucht habe. Ich dachte, dass es existieren musste, aber ich sah es nie in dem Buch, das ich habe (was zugegebenermaßen veraltet ist, bei v0.96) oder in irgendeinem der Tutorial-Materialien, die ich gelesen habe. Ich dachte, dass so etwas existiert. Es ist sehr schwierig, Dinge zu finden, wenn man nicht weiß, wie es heißt. –

+0

Ja, es wäre schön, wenn es eine Dokumentation für Databrowse gäbe. Patches willkommen, ich bin sicher :-) –

0

habe ich so etwas wie dieses: http://www.djangosnippets.org/snippets/937/

Es gibt noch andere ähnliche Dinge um, wenn Sie Google für 'django read-only admin' oder ähnliches.

nie unterschätzen, wie flexibel die Django Admin ist ...

Verwandte Themen