Re: Verzeichnis Extensions bei Plone 4

robert rottermann <[email protected]>
Newsgroups gmane.comp.web.zope.german
Message-ID <[email protected]>
Am 01.12.2010 11:42, schrieb pit:
> Ich habe das gemacht, was Robert beschreibt (s.u.). Ich habe es aber nicht
> zum Laufen gekriegt - zumindest nicht in den Varianten wie ich es versucht
> habe aufzurufen. Mir ist nicht ganz klar wie ich die Methode aufrufen soll.
>
> Bisher war es so:
> im Pagetemplate der Aufruf:
> ...tal:define="results python:here.einScriptexternal (parms)"...
> external method definiert:
> id = einScriptexternal
> module name = einScript
> function name = einScriptfunc
> im Extension folder war der file einScript.py
> mit dem inhalt def einScriptfunc(parm)......
>
> Wie müsste ich jetzt die Methode einScriptfunc(parm) im template rufen, wenn
> ich es so anlege wie unten beschrieben?
>
> robert rottermann hatte geschrieben:
>
> einfach im verzeichnis products ein "pseudo product" anlegen. darin hats
> ein leeres __init__.py und das verzeichnis Extensions mit deinen scripts.
>
> zope@mozart:~/redcor4/products>  mkdir Dummy
> zope@mozart:~/redcor4/products>  touch Dummy/__init__.py
> zope@mozart:~/redcor4/products>  mkdir Dummy/Extensions
> zope@mozart:~/redcor4/products>  vim Dummy/Extensions/einScript.py
>
> darin machst du dann wie gewohnt deine methode.
>
> def einScript(self):
>      return "Hallo Velo"
>
>
du legst um bei meinem beispiel zu bleine ein external script an:
ID:dummy
titel:
modul:Dummy.einScript
function:einScript

wenn du den ersten parameter deiner funktion self nest (oder context), dann 
kannst du damit auf die aktuelle zope umgebung zugreifen.
also z.B:

def einScript(self, nochEinParam=None):
     fritz = self.acl_users.getUserById('fritz')


weitere parameter kannst du z.b über einen normalen python script übergeben. z.B:

return context.dummy.(context, nochEinParam=21).

direkt vom ZMI aus kannst Du  keine parameter übergeben. trotzdem ist dann der parameter self mit dem context belegt.
gruss
rr




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