Ir al contenido
Otras versiones

Cargando…

Crear plantillas de texto

Registre la definición del grupo de metadatos en Administración > Metadatos.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 3.10//EN"
"http://www.openkm.com/dtd/property-groups-3.10.dtd">
<property-groups>
<property-group label="Sample Template" name="okg:tpl">
<input label="Name" name="okp:tpl.name"/>
<input label="Birth Date" name="okp:tpl.birth_date" type="date" />
<select label="Language" name="okp:tpl.language" type="simple">
<option label="Java" value="java"/>
<option label="Python" value="python"/>
<option label="PHP" value="php" />
</select>
</property-group>
</property-groups>

Para crear una relación entre los campos del formulario de la plantilla y el grupo de propiedades, debe nombrarlos siguiendo una convención: sustituya “:” y “.” por “_”. A continuación puede ver la correspondencia entre los dos campos:

Nombre del campo de metadatos Nombre del campo de la plantilla Valor del campo de la plantilla
okp:tpl.name okp_tpl_name ${okp_tpl_name!}
okp:tpl.birth_date okp_tpl_birth_date ${okp_tpl_birth_date!}
okp:tpl.language okp_tpl_language ${okp_tpl_language!}

Para este tipo de plantilla crearemos una plantilla HTML. Este es el código fuente de la plantilla:

<html>
<body>
<h1>Sample template</h1>
<table>
<tr>
<td><b>Name</b></td>
<td>${okp_tpl_name!}</td>
</tr>
<tr>
<td><b>Birth Date</b></td>
<td>${okp_tpl_birth_date?string("yyyy-MM-dd")!}</td>
</tr>
<tr>
<td><b>Language</b></td>
<td>${okp_tpl_language!}</td>
</tr>
</table>
</body>
</html>

Las etiquetas ${okp_tpl_name!}, ${okp_tpl_birth_date!} y ${okp_tpl_language!} se sustituirán por los valores introducidos por el usuario. Si intenta acceder a una variable inexistente, se producirá un error y se abortará el procesamiento de la plantilla, pero el operador ! gestiona esta situación. Además, puede indicar un valor por defecto para el caso de que falte uno con esta expresión:

${missing_value!"The default one"}

El resultado es un fichero HTML que contiene los datos solicitados al cliente por OpenKM.

OpenKM utiliza FreeMarker internamente, por lo que puede aprovechar la flexibilidad de su formato. Por ejemplo, puede establecer el formato de fecha de esta manera:

${okp_tpl_birth_date?string("yyyy-MM-dd")!}

Obtenga más información sobre el formato de FreeMarker en Built-in Reference.

  • Suba el fichero tpl.html a /okm:templates/documents con el contenido descrito anteriormente.
  • Registre la definición de metadatos okg:tpl en Administración > Metadatos
  • Habilite los metadatos en los perfiles en Administración > Perfiles
  • Añada el grupo de metadatos okg:tpl al fichero tpl.html.