我有后端的DjangoRestFramework和前端的Vue.js的应用程序。我的用户可以上传图片,它们存储在一个uploaded_media
文件中。
因此,我将+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
添加到了我的urlpatterns模式中。
但是因为它是一个单页面应用程序,所以我在urlpatterns
中添加了re_path(r"^.*$", IndexTemplateView.as_view(), name="entry-point"),
,以便将所有内容重定向到我的index.html
。
我的问题是因为我的图片地址是以这样的格式获取的:"http://127.0.0.1:8000/media/my_pic.jpg"
,它不能被呈现在前端,因为它被重定向到我的entry-point
。
因此,我创建了一个指向虚拟视图的“虚拟”网址路径(path('media/', DummyView.as_view())
):
class DummyView(TemplateView):
pass
它起作用了。只是为了第一张照片。我做得对,但错过了什么,还是我走错了方向?
发布于 2020-08-13 22:14:40
如果有帮助,我找到了一个比创建一个“虚拟”视图更好的方法,我只需要这样改变我的entry-point
地址:
re_path(r"^(?!media).*$", IndexTemplateView.as_view(), name="entry-point")
因此,除了以'media‘开头的URL之外的所有内容都被重定向到entry-point
https://stackoverflow.com/questions/63396866
复制相似问题