2012-06-04 81 views
0

我有一些非常奇怪的東西。我在win7 Django 1.4上。 我有以下MEDIA_ROOT/URL設置:通過管理員使用FileField在django上傳

MEDIA_ROOT = 'c:\project\uploads' 
MEDIA_URL = '/media/' 

我url.py包括:

urlpatterns += patterns('', 
    (r'^media/(?P<path>.*)$', 'django.views.static.serve', { 
    'document_root': settings.MEDIA_ROOT})) 

我與該領域的典範:

file = models.FileField(upload_to=MEDIA_ROOT, blank = True) 

現在,我通過管理網站上傳文件,文件上傳成功。但是,通過管理我看到的鏈接文件是訪問文件時:

http://127.0.0.1:8000/media/c:\project\uploads\[filename] 

我不知道我在做什麼錯。

回答

2

我覺得你的模式是錯誤的:

file = models.FileField(upload_to=MEDIA_ROOT, blank = True) 

upload_to預計其添加到MEDIA_ROOT相對路徑,所以現在它希望該文件是在MEDIA_ROOT/MEDIA_ROOT這是沒有意義的。

試着這麼做:

文件= models.FileField(upload_to = '文件',空=真)

文檔:

FileField.upload_to本地文件系統路徑將被附加到您的MEDIA_ROOT設置的 以確定url屬性的值。