save action in Portlet erweitern

Matthias Teege <[email protected]>
Newsgroups gmane.comp.web.zope.german
Message-ID <[email protected]>
Hallo,

in einem Portlet möchte ich zu einer URL die UID des Objektes
speichern. Beim Erstellen des Portlets verwende ich:

class Assignment(base.Assignment):

    implements(ICkPortlet)

    def __init__(self, url=u""):
        self.url = url
        self.did = self._getDid(url)

    def _getDid(self, url):
        c = getSite()
        o = c.restrictedTraverse('%s%s' % (c.portal_url.getPortalPath() , str(url)))
        if o:
            return o.UID()
        return False

Beim ändern der Einstellung soll auch die UID neu gesetzt werden. Ich
dachte, ich könne mich an die "Save" Aktion hängen.

class EditForm(base.EditForm):
    form_fields = form.Fields(ICkPortlet)

    @form.action(_(u"Save"))
    def mysave(self, action, data):
        data["did"] = "2323" # test
        super(EditForm, self).handle_save_action(action, data)

Mit diesem Code bekomme ich aber die Fehlermeldung "TypeError: 'Action'
object is not callable" zurück.

Wie erweitere ich die Funktion für das Speichern richtig? Das Portlet
soll unter Plone 3 laufen.

Vielen Dank
Matthias



_______________________________________________
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.