Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

上传图片问题 #74

Closed
starshine360 opened this issue Feb 9, 2020 · 12 comments
Closed

上传图片问题 #74

starshine360 opened this issue Feb 9, 2020 · 12 comments

Comments

@starshine360
Copy link

在admin后台,添加图片时,点击本地上传,图片正确存入了相应的文件夹,请问此时图片地址应该填什么才可以使得图片正确显示呢?

@Rantele
Copy link

Rantele commented Mar 21, 2020

同问

@KangKang-Wang
Copy link

同样的问题

@PandapanZ
Copy link

from django.conf.urls import url, include
from django.conf.urls.static import static
from django.conf import settings
...

urlpatterns = [
...
url(r'mdeditor/', include('mdeditor.urls'))
]

if settings.DEBUG:
# static files (images, css, javascript, etc.)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

from django.conf.urls.static import static和最后那段debug加上之后就可以显示图片了

@pylixm
Copy link
Owner

pylixm commented Apr 6, 2020

这属于django的静态文件的问题了,图片上传之后上传框会回显图片的url 地址,可直接使用该地址用来显示图片。该地址就是你在settings 中配置的MEDIA_URL +editor+文件名。例如实例中的结构为:
http://127.0.0.1:8001/media/editor/y1_DSC_4920_20200406122423520098.jpg

其次,还要除以django debug 模式和生产模式对静态文件的区别。debug模式时,需要再url 里显示的添加urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) ,而在生产模式(环境)中,静态文件是nginx等web容器管理的,无需添加该url 配置。

@KangKang-Wang
Copy link

是的,这边是完全参考demo的配置做的,在Django3.0的环境下仍然不支持上传图片后取得
Image
上面是来自前端的报错信息

@pylixm
Copy link
Owner

pylixm commented Apr 8, 2020

@KangKang-Wang 看下你console 下是否有如下报错,如有可增加 X_FRAME_OPTIONS 配置,该配置django3.0+下默认是deny和之前版本有区别。

image

@KangKang-Wang
Copy link

image
报错信息为以上,我的setting.py设置了X_FRAME_OPTIONS = 'SAMEORIGIN'

@KangKang-Wang
Copy link

文件也已经成功上传到目标文件夹内,可是前端拿不到该图片的url

@pylixm
Copy link
Owner

pylixm commented Apr 8, 2020

@KangKang-Wang 可否给我一个可复现上边错误的最小demo代码,我调试下。

@KangKang-Wang
Copy link

demo.tar.gz
在admin里面直接对Comment添加就可以复现了,我用的sqlite

@pylixm
Copy link
Owner

pylixm commented Apr 9, 2020

没复现,你再别比对下。
test_md.zip

@KangKang-Wang
Copy link

通过对比测试,问题出在浏览器兼容方面,我刚刚改用Firefox显示正常,可以获取到图片URL,改用原来的Chrome就不行,报错的地方还在那块JavaScript代码那,请参考:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants