0

我想在管理面板中创建一个设置,这将帮助我从管理面板更改网站徽标。我为数据库创建了一个模型,它正在工作并将图像上传到数据库+文件夹。但我无法将此图像添加到网站模板。当我查看页面源图像时,SCR 为空。

我的模型.py

class WebLogo(models.Model):
    Logotitle = models.CharField(max_length=50,unique=False)
    SiteLogo = models.ImageField(upload_to='webimages')

def __str__(self):
    return self.Logotitle

我的观点.py

from .models import Post,WebLogo


def Display_WebLogo(request):
    # getting all the objects of hotel.
    WebsiteLogo = WebLogo.objects.all()
    return render((request, 'index.html',{'web_images' : WebsiteLogo}))

我的项目 Urls.py

urlpatterns = [
    path('', views.PostList.as_view(), name='home'),
    path('<slug:slug>/', views.PostDetail.as_view(), name='post_detail'),
    ]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

我的 HTML 代码

  <a href="index.html"><img src="{{ WebLogo.SiteLogo.url }}" class="img-fluid" alt="logo">       
  </a>

我的应用网址

from django.contrib import admin
from django.urls import path,include


urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
]
4

2 回答 2

0

在 HTML 代码中,使用 'web_images' 而不是这样的 WebLogo

<a href="index.html"><img src="{{ web_images.0.SiteLogo.url }}" class="img-fluid" alt="logo">       
  </a>

它看起来像 {{ data.0 }}。请参阅变量和查找

于 2020-03-04T09:04:28.757 回答
0

您应该在 settings.py 文件中写入所需的信息。

https://docs.djangoproject.com/en/dev/ref/settings/#media-root

于 2020-03-04T08:54:46.677 回答