我正在Django 2.2中进行项目开发,加载静态图像时遇到问题。我遵循了一个在项目根目录中建议使用媒体目录的教程。之后,我按照建议配置了设置,如下所示:
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/
STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
项目的urls.py如下所示:
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('base.urls'))
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
这是base.urls
文件,其中包含带有我要加载的图像的页面:
urlpatterns = [
path('', views.index, name='tedfield-home'),
path('faqs/', views.faqs, name='tedfield-faqs'),
path('contact/', views.contact, name='tedfield-contact'),
path('about/', views.about, name='tedfield-about'),
]
我正在加载网站使用的静态图像。这些图像在主页上加载得很好,但是当我导航到/ about之类的页面时,图像无法加载。检查时,加载的链接是http://127.0.0.1:8000/about/media/images/brands/brand-2.png
,它具有about
而不是链接:http://127.0.0.1:8000/media/images/brands/brand-2.png
是实际加载图像的链接。我用于html模板的代码是:
<img src="media/images/icons/area.png" alt="">
我还尝试过在根文件夹上使用静态目录,并将图像文件夹放入其中,然后使用以下代码加载它:
<img src="{% static 'assets/images/icons/area.png' %}" alt="">
但是它仍然无法加载图像。 我在做错什么吗?
答案 0 :(得分:0)
我求助于my_app/static/my_app
来处理图像,并且有效。正在关注另一个tutorial,但似乎他们没有将导航到其他页面的麻烦考虑在内。但是使用上面的目录,图像可以正常加载。