Pregunta

Necesito un campo de archivo blob como parte de un tipo de contenido en plone. Plone.app.Blob's Blobfield debería proporcionar esto, pero no puedo encontrar cómo obtener una URL para descargar el archivo, incluido el nombre de archivo original (por ejemplo, http://plone.site/plone/obj/orig-file-name.avi). ¿Hay alguna forma de hacer esto usando plone.app.blob?

Alternativamente, hay algunos consejos en la web que apuntan a Plone.namedFile para hacer esto. Plone.namedFile parece confiar en Z3C.BlobFile. ¿Cómo difiere Z3C.BlobFile de plone.app.blob?

¿Es uno de estos métodos mejores que el otro?

vik

¿Fue útil?

Solución

Si desea descargar el archivo con el nombre de archivo original, necesitará algunas piezas más:

  1. Asegúrese de poner primario = verdadero en la configuración del campo en el esquema.

  2. Asegúrese de que las subclases de clase de su tipo de contenido Plone.app.blob.content.atblob, que proporciona un método index_html que descarga el campo primario.

  3. Asegúrese de agregar el portal_type de su tipo de contenido a la lista TypesSeViewActionInlistings en portal_properties/sitio_properties.

Plone.NamedFile proporciona un campo de archivo que se puede usar con la biblioteca Z3C.FORM. De hecho, se basa en z3c.blobfile, que proporciona una interfaz similar al objeto de archivo de Zope.app.file. Probablemente esto no sea lo que desea si está construyendo un tipo de contenido basado en arquetipos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top