所以我有一个webfaction项目,我需要创建两个不同的环境,一个服务器django和一个服务器静态文件。Django 1.6图像上传和媒体路径
所以当我从管理面板上传图像时,我可以看到图像放置在我定义的根中,但是具有完整路径。当我返回图像在我看来我得到我的domain.com/full/media/root/path/imagename
这会生成一个断开的链接 - 当我去mydomain.com/uploads/image_name,我可以看到图像文件是在那里但是我的链接指向完整路径,而不是root_url,
你能帮我一下吗?我真的不明白,我怎么能在我看来,解决这个图像链接
<img src="{{ MEDIA_URL }}{{ mymodel.my_image }}" alt="{{ name }}" width="150" height="200" />
我明白有类似这样的在这里却没有一个人能正确地引导我关于如何隐藏或改变路径,以多学科根 “上传”
我有我的管理
class Movie(models.Model):
name = models.CharField(max_length=50)
def get_file_path(instance, filename):
ext = filename.split('.')[-1]
filename = "%s.%s" % (uuid.uuid4(), ext)
return os.path.join('/home/user/webapps/project/uploads/' , filename)
my_image = models.ImageField(upload_to = get_file_path, null=True, blank=True)
def __unicode__(self):
return self.name
工作正常,在我的设置:
MEDIA_ROOT = '/home/user/webapps/project/uploads/'
MEDIA_URL = '/uploads/'
和项目网址:
从django.conf.urls进口模式,包括从django.conf导入设置URL
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
)
if settings.DEBUG:
urlpatterns += patterns('',
(r'^uploads/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.MEDIA_ROOT}))
谢谢大家提前