ciao a tutti,
sto cercando di richiamare da un template di un mio pacchetto una
funzione, secondo un po' di informazioni che ho raccolto in giro questi
sono i passi logici che ho seguito:
1) in una libreria (file customMap_macros.py) sotto
src/progetto.pacchetto/progetto/pacchetto/browser ho dichiarato una
classe che eredita BrowserView come segue a cui ho assegnato un metodo
che richiama la funzione in questione:
from progetto.pacchetto.utility import * # <- qui si trova la funzione
# getJsonMapset usa sotto
class jsonstringMacros(BrowserView):
def getJsonString(self, myMap):
jstring = getJsonMapset(myMap)
return jstring
2) in src/progetto.pacchetto/progetto/pacchetto/browser/configure.zcml
ho dichiarato la view come segue:
<browser:page
name="jsonstring-macros"
for="*"
template="jsonstring.pt"
class=".customMap_macros.jsonstringMacros"
permission="zope2.View"
/>
3) ora nel template jsonstring.pt (anche lui in .../browser/) dovrei
richiamare il metodo getJsonString della classe nota come
jsonstring-macros/jsonstringMacros e passargli come parametro il
documento plone corrente, il mio dubbio è proprio questo: come la
richiamo?
mi è stato detto "view/mymethod nel template è tutto ciò di cui hai
bisogno" e così ho inserito quanto segue in jsonstring.pt:
<div id="my_map" metal:define-macro="getJson">
<div tal:define="jsonString
jsonstring-macros/getJsonString/context;">
<div tal:replace="jsonString">pippo</div>
</div>
</div>
<div metal:use-macro="getJson">pippo</div>
ma dall'errore che ottengo è evidente che la funzione non è chiamata
correttamente:
- Warning: Compilation failed
- Warning: zope.tal.taldefs.TALError: Invalid variable name "context"
in expression 'jsonstring-macros/getJsonString/context', at line 6,
column 5
PTRuntimeError: ['Compilation failed', 'zope.tal.taldefs.TALError:
Invalid variable name "context" in expression
\'jsonstring-macros/getJsonString/context\', at line 6, column 5']
2010-06-04 11:46:19 ERROR PageTemplateFile Error in template Compilation
failed
zope.tal.taldefs.TALError: Invalid variable name "context" in expression
'jsonstring-macros/getJsonString/context', at line 6, column 5
2010-06-04 11:46:19 ERROR PageTemplateFile Error in template Compilation
failed
zope.tal.taldefs.TALError: Invalid variable name "context" in expression
'jsonstring-macros/getJsonString/context', at line 6, column 5
ogni suggerimento sarà apprezzato
Grazie molte
scusate lo sproloquio ma ho già cercato di ridurre al minimo...
Manuele
_______________________________________________
Plone-IT mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/plone-it
http://www.nabble.com/Plone---Italy-f21728.html