Django:上传ICO文件时的KeyError

时间:2014-12-08 07:35:07

标签: python django django-models

我的模特是:

class Logo(models.Model):
    TYPES=(('logo', _('Logo')),('fav', _('Favicon')))

    type = models.CharField(max_length=10, choices=TYPES, default='logo')

    mimeType = models.CharField(
        max_length=127,
        verbose_name=_('Mime Type'),
        blank=True,
        null=True
    )

    src = ProcessedImageField(
        upload_to='logos/',
        options={'quality': 60},
        verbose_name=_('Source')
    )

    faviconLength = models.IntegerField(verbose_name=_('Favicon length'), blank=True, null=True)
    favicon = models.TextField(verbose_name=_('Favicon'), blank=True, null=True)

    group = models.ForeignKey(
    Group,
    related_name='logo_group',
    verbose_name=_('Group'),
    null=False,
    blank=False
    )

    def __unicode__(self):
        return self.src.name

    class Meta:
        verbose_name = _('Logo')
        verbose_name_plural = verbose_name

当我尝试上传ICO文件时,我有以下异常:

/ admin / tenant / logo / add /的KeyError 'ICO'

我的问题是:ICO文件有什么问题?

1 个答案:

答案 0 :(得分:0)

我想我找到了答案。在PIL文档中,我看到ICO是只读的,但我尝试进行写操作。这就是问题。经过2个小时的调试和googlering:D我的问题在于编码。当我将我的字段更改为FileField时,不再有任何问题。