Tenemos un requisito para que el tipo de contenido de destreza excluya del comportamiento de navegación, pero para el valor predeterminado del campo exclude_from_nav
sea True
. En el comportamiento plone.app.dexterity.behaviors.exclfromnav.IExcludeFromNavigation
su valor predeterminado es False
.¿Cómo se anula el valor predeterminado de un campo en un comportamiento de destreza en Plone?
Obviamente, podría crear mi propio comportamiento que copie IExcludeFromNavigation
, excepto el valor predeterminado, pero me preguntaba si había una manera de hacerlo basándose en la reutilización de IExcludeFromNavigation
. Tenemos otros tipos de contenido que usan IExcludeFromNavigation
donde queremos que sea predeterminado a False
.
Estamos usando Plone 4.1rc3 y destreza 1.0
Otra opción sería registrar un formulario de adición personalizado y luego usar el 'formulario' (¿o es 'ver'?) discriminator a default_value() para especificar una anulación solo para ese formulario. – optilude
Gracias, utilicé esto para mi escenario donde tengo dos tipos de objetos diferentes en el mismo contenedor que quiero excluir de manera predeterminada. El problema fue que no pude poner el mismo decorador en ambas definiciones de objeto o me daría problemas de conflicto de configuración. Terminé declarando en uno de los tipos :: return data.request.URL.endswith ('++ add ++ my_item_type') o data.request.URL.endswith ('++ add ++ my_other_type') –
y como su ejemplo, tuve que eliminar el parámetro de contexto para que funcione en absoluto ... parece realmente hacky. –