Re: [dzug-zope] Navigation-Portlet: anderer Top-Level für angemeldete User?
Hartmut Goebel <[email protected]>
| Newsgroups | gmane.comp.web.zope.german |
|---|---|
| Organization | Goebel Consult |
| Message-ID | <[email protected]> |
Hallo,
Ich schrieb:
> Ich habe versucht, einen eine eigene Navigation-Renderer zu
> implementieren, aber massive Probleme damit. Siehe den Thread, den ich
> gleich aufmachen werde.
Diese Probleme habe ich inzwischen doch gelöst, den neuen Thred wird es
nicht geben.
Ich weiß nicht genau, was das Problem verursacht, denn meines Erachtens
ist das ein Design-Fehler. Egal, so geht es:
* Eigene Interface-Klasse implementieren (und wenn es eine Klasse ist,
die nur von der Basis-Klasse erbt: man benötigt diese Klasse)
* Ein Assignment implementieren, mit
implements(myNewInterfaceKlass)
* Renderer implementieren
* AddForm implementieren. Dieses _muss_ ein Objekt der eigenen
Assignment-Klasse liefern. Titel und Beschreibung anpassen
* EditForm implementieren, um Titel und Beschreibung anzupassen
Auch wenn das neue Portlet sich nur durch den Renderer unterscheidet,
braucht man ein eigenes Interface! Und das Assignment muss dieses
Interface implementieren, und natürlich muss dann AddForm dieses
Assignment erzeugen!
Mir ist unklar, weshalb genau. Denn eigentlich wird die Zuordnung ja in
der configure.zcml gemacht. Aber anscheinend ist der Aufhänger dort
_nicht_ der Name, sondern das Interface. [Wie geschreiben: M.E. ein
Designfehler.]
Zusammenfassung: Ich habe jetzt einen SkinnedNavigation Portlet
implementiert, das nur für einen bestimmte Skin angezeigt wird. Erfüllt
meine Anforderungen.
--
Schönen Gruß - Regards
Hartmut Goebel
Dipl.-Informatiker (univ.), CISSP
Goebel Consult
Spezialist für IT-Sicherheit in komplexen Umgebungen
http://www.goebel-consult.de
_______________________________________________
zope mailing list
[email protected]
https://mail.dzug.org/mailman/listinfo/zope
smime.p7s
(application/x-pkcs7-signature, 4.6 KB) - not displayed