Python: "dynamische" Klassenvariablen?

Peter Zechmeister <[email protected]>
Newsgroups gmane.comp.web.zope.german
Message-ID <1265212205.7593.29.camel@pze>
Hallo,

ich schreibe gerade an einem Produkt für Zope. Es hat einige ZPTs, die
ich im Products/zpt-Verzeichnis haben möchte und beim Erstellen einer
Instanz _nicht_ in der ZODB haben will.
Ich denke, das würde in etwa so gehen:

class TestClass(Implicit, Persistent, RoleManager, Item):
  [...]
  zptA=PageTemplateFile('zpt/zptA.htm', globals())
  zptB=PageTemplateFile('zpt/zptB.htm', globals())   
  zptC=PageTemplateFile('zpt/zptC.htm', globals())
  [...]

Diese ZPTs landen dann genauso im Namespace von context, als würden sie
im ZMI liegen und sie sind immer aktuell - zumindest nach jedem
Zope-Neustart.

Nur ist es etwas mühsam, für jedes ZPT eine eigene Zeile zu haben.
Jetzt suche ich nach einer Möglichkeit, mit einem Rutsch alle Files aus
Products/zpt/* in die Klasse zu bekommen. Wie würde das gehen (also das
'dynamische' Anlegen von Klassenvariablen, die Filesystem-Sachen sind
mir eh klar)?

Hab mir schon überlegt, das im __init__ zu machen und dann jeweils
self[scriptname] = PageTemplateFile(...) zu machen. Aber wenn ich das
richtig verstehe, hätte ich die ZPTs dann in jeder Instanz persistent
drinnen und somit Probleme mit der Versionierung.

BGrü
PeterZ



_______________________________________________
zope mailing list
[email protected]
https://mail.dzug.org/mailman/listinfo/zope
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.