在管理面板中上传图片时出现django错误

时间:2013-05-07 12:52:54

标签: django django-models django-admin python-imaging-library

当我尝试在管理面板中上传图片时,我收到消息:

  

'tuple'对象没有属性'startswith'

#models.py
class Category(models.Model):
    title = models.CharField(max_length=255)
    slug = models.SlugField(unique=True)
    body = models.TextField()
    img = models.ImageField(upload_to='img2')
    visible = models.BooleanField(default=True)

    def __str__(self):
        return self.title

    def __unicode__(self):
        return self.title


#settings.py
MEDIA_ROOT = (os.path.join(os.path.dirname(__file__), '..', 'media').replace('\\','/'),)
MEDIA_URL = '/media/'

Traceback 如何修复这个?谢谢:))

2 个答案:

答案 0 :(得分:3)

您将MEDIA_ROOT设置为元组,而不是字符串。

MEDIA_ROOT = os.path.join(os.path.dirname(__file__), '..', 'media').replace('\\','/')

答案 1 :(得分:0)

我认为你宣称这是一个元组:

MEDIA_ROOT = (os.path.join(os.path.dirname(__file__), '..', 'media').replace('\\','/'),)

最后查看,)?这种方式应该更好:

MEDIA_ROOT = os.path.join(os.path.dirname(__file__), '..', 'media').replace('\\','/')

希望它有所帮助。