1 | Veraltet! | ||
2 | Zope Einführung | ||
3 | Bausteine | ||
4 | Ein objektorientierter Webserver | ||
4. | 1 | Benutzer und Rollen | |
4. | 2 | ZCatalog | |
4. | 3 | Relationale Datenbanken | |
4. | 4 | ZEO | |
5 | Entwickeln mit Zope | ||
5. | 1 | TTW (Through the Web) | |
5. | 2 | Python Produkte | |
6 | Nachteile von Zope | ||
7 | Persönliche Einschätzung zu Zope | ||
8 | FAQ | ||
9 | Glossar | ||
10 | Links | ||
11 | About |
<dtml-in objectValues> title: <dtml-var title> <br> </dtml-in>Obiges Beispiel könnte z.B. innerhalb eines Zope Ordners aufgerufen werden. Die Anweisung dtml-in ist eine Schleife. Sie iteriert über alle Einträge des Ordners und gibt deren Titel aus.
def fooFunction(parameter=None, REQUEST=None): print "fooFunction called with parameter: %s" % parameter ....
cd $ZOPE_HOME/lib/python #Eine Datei finden: find . | grep -i fooDatei #Eine Funktion in allen Quellen suchen: grep -rsi 'def myFunction' | less
def fooMethod(self): ret=[] ret.append(self.standard_html_header()) ret.append("<b>Das ist nur ein Beispiel</b>") #Tabelle der Zahlen 0 bis 9 und deren Quadrat rows=[] for i in range(10): rows.append('<tr><td>%s</td><td>%s</td></tr>' % (i, i*i)) rows=''.join(rows) # mache aus der Liste einen String ret.append(""" Längeren Text kann man so eingeben .... <table border="1"> <tr> <th>Zahl<th> <th>Quadrat<th> <tr> %s </table> Uhrzeit: %s """ % (rows, time.time()) ) ret.append(self.standard_html_footer()) return string.join(ret)Der Einsatz von ZPT ist dann sinnvoll, wenn eine Seite mehr Layout (HTML) als Logik (Python) enthält.
Einsatzbereich | Umsetzung | |
---|---|---|
Gemeinsames Erstellen von dynamischen Webseiten: Wenn der Inhalt hauptsächlich aus statischen Seiten besteht, können leicht mehrere Leute gemeinsam an den Seiten arbeiten. | Verwenden von DTML bzw. ZPT. Editieren per Web-Browser oder FTP. | |
Programmierung von individuellen Lösungen: Die Möglichkeit mittels http oder XML-RPC auf eine objektorientierte Datenbank zuzugreifen ist sehr flexibel. | Programmieren von Python Produkten. |
my_template = PageTemplateFile('www/my_template', globals(), __name__='my_template')Die Datei "www/my_template.zpt" muss existieren.