Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
tf-infoportal:dokumentation:plone:plone-erweiterte-projektliste-nach-stichwort [2012/09/20 16:25] – ch59 | tf-infoportal:dokumentation:plone:plone-erweiterte-projektliste-nach-stichwort [2013/11/04 15:47] (aktuell) – ch59 |
---|
====== Projektliste nach parametrisierbarem Stichwort filtern (XSLTrans, Dynamic Documents) ====== | ====== Projektliste nach parametrisierbarem Stichwort filtern (XSLTrans, Dynamic Documents) (ALT) ====== |
Vorausgesetzte Kenntnisse: HTML, TAL, Python | Vorausgesetzte Kenntnisse: HTML, TAL, Python |
| |
Im folgenden wird ein Workaround vorgestellt, mit dem es möglich ist, mit Hilfe eines XSLTrans Dokuments, sowie eines Dynamic Documents Projektlisten auszugeben, die mittels eines Parameters (keywords) nach dem Stichwort in der Forschungsdatenbank gefiltert werden können. | Im folgenden wird ein Workaround vorgestellt, mit dem es möglich ist, mit Hilfe eines XSLTrans Dokuments, sowie eines Dynamic Documents Projektlisten auszugeben, die mittels eines Parameters (''keyword'') nach dem Stichwort in der Forschungsdatenbank gefiltert werden können. |
| |
Zuerst muss man wie üblich ein XSLTrans Dokument anlegen mit den üblichen Parametern, um eine Projektliste auszugeben. | Zuerst muss man wie üblich ein XSLTrans Dokument anlegen mit den üblichen Parametern, um eine Projektliste auszugeben. |
<div tal:define='additionalparams python:(str("LfdNr=") + projectid,str("xql=Stichwort~~\"") + keyword + str("*\""))[len(projectid) == 0]'> | <div tal:define='additionalparams python:(str("LfdNr=") + projectid,str("xql=Stichwort~~\"") + keyword + str("*\""))[len(projectid) == 0]'> |
<!-- Comment in to show debug output <div tal:content="python:str(additionalparams)">XQL goes here</div>--> | <!-- Comment in to show debug output <div tal:content="python:str(additionalparams)">XQL goes here</div>--> |
<div tal:define='Parameters python:("image_float=right","Ausgabeart=xml", "Sprache=D", "dokumentart=Projekt", "Kostenstelle=" + kostenstelle, "Lfdnr=" + projectid, "language=D", "image_float=right", additionalparams); foo python:context.xsltrans_master_forschungsthemen.setParam(Parameters)'> | <div tal:define='Parameters python:("Jahr=alle", "Ausgabeart=xml", "Sprache=D", "dokumentart=Projekt", "Kostenstelle=" + kostenstelle, "Lfdnr=" + projectid, "language=D", "image_float=right", additionalparams); foo python:context.xsltrans_master_forschungsthemen.setParam(Parameters)'> |
<div tal:content="structure python:context.xsltrans_master_forschungsthemen.get_result()" /> | <div tal:content="structure python:context.xsltrans_master_forschungsthemen.get_result()" /> |
</div> | </div> |
<!-- reset der Parameter von xsltrans --> | <!-- reset der Parameter von xsltrans --> |
<div tal:define='Parameters python:("image_float=right","Ausgabeart=xml", "Sprache=D", "dokumentart=Projekt", "Kostenstelle=" + kostenstelle, "language=D", "image_float=right"); foo python:context.xsltrans_master_forschungsthemen.setParam(Parameters)' /> | <div tal:define='Parameters python:("Jahr=alle", "Ausgabeart=xml", "Sprache=D", "dokumentart=Projekt", "Kostenstelle=" + kostenstelle, "language=D", "image_float=right"); foo python:context.xsltrans_master_forschungsthemen.setParam(Parameters)' /> |
</div> | </div> |
</div> | </div> |
| |
Damit kann dann in den Parametern der zusätzliche Parameter ''additionalparams'' eingebaut werden, der entweder das Stichwort abfragt, oder eben ein bestimmtes Projekt. | Damit kann dann in den Parametern der zusätzliche Parameter ''additionalparams'' eingebaut werden, der entweder das Stichwort abfragt, oder eben ein bestimmtes Projekt. |
| |
| Jetzt kann dann das Dynamic Document (nennen wir es ''forschungsthema-details-nach-stichwort'') mit folgenden Parameterkombinationen aufrufen: ''forschungsthema-details-nach-stichwort?keyword=Brennstoffzellen'' oder auch ''forschungsthema-details-nach-stichwort?projectId=8076''. Somit kann man auf einer HTML-Seite dann die erstgenannten Links einbindungen und Ergebnislisten, gefiltert nach Stichwort ausgeben. |
| |
--- //[[hermann@informatik.uni-freiburg.de|Christoph Hermann]] 2012/09/20 16:20// | --- //[[hermann@informatik.uni-freiburg.de|Christoph Hermann]] 2012/09/20 16:20// |
| |
{{tag>techniker plone tf-infoportal xsltrans parameter}} | {{tag>techniker plone tf-infoportal xsltrans parameter}} |