用户上传的图像没有显示,尽管我在模板中没有做错。此外,我还定义了MEDIA_URL和MEDIA_ROOT。没有显示图像的原因可能是什么?
代码
image = models.ImageField(upload_to='products/%Y/%m/%d', blank=True)
project/ulls.py(主项目的urls.py(
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include('shop.urls', namespace='shop')),
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL,
document_root=settings.MEDIA_ROOT)
设置.py
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
templates/shop/product/list.html
<a href="{{ product.get_absolute_url }}">
<img src="{% if product.image %} {{ product.image.url }} {% else %} {% static 'img/no_image.png' %} {% endif %}" >
</a>
我知道这个问题被问了很多次,但我的代码在文档之后,仍然无法显示图像。有人能帮我吗?
重新启动服务器后,它现在可以工作了。因此,上述提供媒体文件的代码和过程是正确的。