阻止用户将PMP,TIFF等图像上传到Plone中的ImageField

Mik*_*maa 4 plone archetypes dexterity

用户可以这样做.

但是,图像自动调整大小等会中断.

这让我成为一个伤心的男孩.

如何在全站范围内限制图片上传到GIF,PNG和JPEG?

  • 对于Archetypes

  • 对于敏捷

Pur*_*gon 5

使用Archetypes可以覆盖图像内容类,或使用以下模式创建自己的自定义图像内容类.

你可以添加该行

allowable_content_types = ('image/gif', 'image/jpeg', 'image/png'),
Run Code Online (Sandbox Code Playgroud)

到您的架构

MyImageSchema = schemata.ATContentTypeSchema.copy() + atapi.Schema((
        ImageField('image',
            required = False,
            allowable_content_types = ('image/gif', 'image/jpeg', 'image/png'),
            storage=AttributeStorage(),
            sizes= {'large'   : (768, 768),
                   'preview' : (400, 400),
                   'mini'    : (200, 200),
                   'thumb'   : (128, 128),
                   'tile'    :  (64, 64),
                   'icon'    :  (32, 32),
                   'listing' :  (16, 16),
                  },
          widget = ImageWidget(
                     label=_(u"Image"),
                     show_content_type=False,
             ),
    ),
Run Code Online (Sandbox Code Playgroud)

我可能会使用模式扩展器来扩展Image类,覆盖该特定字段

http://weblion.psu.edu/services/documentation/developing-for-plone/products-from-scratch/schemaextender