2012-12-10 46 views
0

我想构建一个Django应用程序并将其托管在webfaction上。为什么我的图片在django上传失败?

我的模型看起来是这样的:

class Post(models.Model): 
    title = models.CharField(max_length=512) 
    image = models.ImageField(upload_to='blogImages/') 
    body = models.TextField() 
    visible = models.BooleanField() 
    date_created = models.DateTimeField(auto_now_add=True) 
    date_updated = models.DateTimeField(auto_now=True) 
    tags = models.ManyToManyField('Tag', null=True, blank=True) 

    def __unicode__(self): 
     return self.title 

的设置是这样的:

MEDIA_ROOT = '/home/myself/webapps/dev_static/media/' 
MEDIA_URL = 'http://dev.example.com/static/media/' 
STATIC_ROOT = '/home/myself/webapps/dev_static/' 
STATIC_URL = 'http://dev.example.com/static/' 

当我去到我的服务器,并尝试上传一张图片,我得到这个错误:

SuspiciousOperation at /admin/blog/post/add/ 
Attempted access to '/home/myself/wrong/path/appname/blogImages/Portal2-Logo.jpg' denied. 

我想弄清楚错误路径可能来自哪里。我应该在哪里寻找错误的道路?

+0

查看另一个问题:http://stackoverflow.com/questions/3631941/django-uploading-file-not-in-media-root-path-is-giving-me-suspiciousoperation-er – Cheung

回答

0

的错误返回旧的静态媒体路径解决。重新启动Apache之后,它开始正确使用正确的路径。

0

我有同样的问题,与

image = models.ImageField(upload_to='/blogImages/') 

,而不是(upload_to='blogImages/')