当我尝试上传图像时,我遇到了 Django-Filebrowser 的问题。我正在使用以下版本:Django 1.8.7、Filebrowser 3.6.4和Python 2.7。
当我尝试上传图片时,一切都按预期工作,上传的文件放在正确的文件夹中没有任何问题;但生成的文件 url 没有任何必要的前导斜杠来正确提供文件。
例如,如果我尝试上传“test.jpg”,最终的图像 url 将是“uploads/test.jpg”和“_versions/test_xxx.jpg”,即使在 Filebrowser 面板中也会产生问题,因为生成的请求将发给服务器http://localhost:8000/admin/filebrowser/browse/uploads/test.jpg
,而http://localhost:8000/admin/filebrowser/browse/_versions/test.jpg
不是服务器将正常服务。http://localhost:8000/uploads/test.jpg
http://localhost:8000/_versions/test.jpg
(请注意,文件浏览器面板 url 是http://localhost:8000/admin/filebrowser/
)
这是我的设置:
网址.py:
urlpatterns = [
url(r'^admin/filebrowser/', include(site.urls)),
url(r'^admin/', include(admin.site.urls)),
url(r'^', include('pages.urls')),
url(r'^blog/', include('articles.urls')),
url(r'^tinymce/', include('tinymce.urls')),
url(r'^grappelli/', include('grappelli.urls')),
]
设置.py
FILEBROWSER_DIRECTORY = 'uploads/'
FILEBROWSER_VERSIONS_BASEDIR = '_versions/'
添加前导斜杠FILEBROWSER_DIRECTORY
会触发 SouspiciusFileOperation 错误,因为“/uploads/”位于项目文件夹之外。
提前致谢。