当前位置: 首页 > 知识库问答 >
问题:

mdbootstrap 5未在Django 2.1.15中显示

戈念
2023-03-14

我有一个简单的django项目。我想在其中添加材质设计引导。

settings.py:

STATIC_URL = '/static/'
# _______________________________________________________________________ 
STATIC_ROOT = os.path.join(BASE_DIR, '/assets')
# _______________________________________________________________________ 
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, '/static') 
]

urls.py:

from .views import index, core, other

urlpatterns = [
    path('', index, name='startpage'),
    path('core/', core, name = 'homepage'),
]

views.py:

from django.shortcuts import render

def index(request):
    return render(request, 'index.html')

def core(request):
    return render(request, 'base.html')

index.html:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
    <meta http-equiv="x-ua-compatible" content="ie=edge" />
    <title>Material Design for Bootstrap</title>

    <!-- MDB icon -->
    <link rel="icon" href="{% static 'assets/img/mdb-favicon.ico' %}" type="image/x-icon" />

    <!-- Font Awesome -->
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.11.2/css/all.css" />
    <!-- Google Fonts Roboto -->
    <link
      rel="stylesheet"
      href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap"
    />
    <!-- MDB -->
    <link rel="stylesheet" href="{% static 'assets/css/mdb.min.css' %}" >
    <!-- Custom styles -->
    <style></style>
  </head>
  <body>
    <!-- Start your project here-->
    <header>
      <!-- Navbar -->
      <nav class="navbar navbar-expand-lg navbar-light bg-white">
        <div class="container-fluid">
          <button
            class="navbar-toggler"
            type="button"
            data-toggle="collapse"
            data-target="#navbarExample01"
            aria-controls="navbarExample01"
            aria-expanded="false"
            aria-label="Toggle navigation"
          >
            <i class="fas fa-bars"></i>
          </button>
          <div class="collapse navbar-collapse" id="navbarExample01">
            <ul class="navbar-nav mr-auto mb-2 mb-lg-0">
              <li class="nav-item active">
                <a class="nav-link" aria-current="page" href="#">Home</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Features</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Pricing</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">About</a>
              </li>
            </ul>
          </div>
        </div>
      </nav>
      <!-- Navbar -->
      <!-- Jumbotron -->
      <div class="p-5 text-center bg-light">
        <h1 class="mb-3">Heading</h1>
        <h4 class="mb-3">Subheading</h4>
        <a class="btn btn-primary" href="" role="button">Call to action</a>
      </div>
      <!-- Jumbotron -->
    </header>
    <!-- End your project here-->
  </body>

  <!-- MDB -->
  <script type="text/javascript" src="js/mdb.min.js"></script>
  <!-- Custom scripts -->
  <script type="text/javascript"></script>
</html>

base.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>My MDB Django Project</title>
  {% load static %}
  <!-- Font Awesome -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- Bootstrap -->
<link href="{% static 'assets/css/bootstrap.min.css' %}" rel="stylesheet">
<!-- Material Design for Bootstrap -->
<link href="{% static 'assets/css/mdb.min.css' %}" rel="stylesheet">
</head>
<body>
  <div style="height: 100vh">
    <div class="flex-center flex-column">
      <h1 class="animated fadeIn mb-4">MDBootstrap loves Django <i class="fa fa-heart red-text"></i></h1>
    </div>
   </div>

  <!-- jQuery -->
<script src="{% static 'assets/js/jquery-3.3.1.min.js' %}"></script>

<!-- Popper.js -->
<script src="{% static 'assets/js/popper.min.js' %}"></script>

<!-- Bootstrap -->
<script src="{% static 'assets/js/bootstrap.min.js' %}"></script>

<!-- Material Design for Bootstrap -->
<script src="{% static 'assets/js/mdb.min.js' %}"></script>

  <script>
    new WOW().init();
  </script>
</body>
</html>

系统规范:<br>ubuntu 18.04<br>python 3.7<br>django 2.1.15<br>Headers-Bootstrap 5

我通过 docker-compose 在本地运行该项目:

sudo docker-组成

当我尝试打开此url时:

http://127.0.0.1:8000/core/

我得到这个错误:

Error during template rendering In template /nowruzWebsite/core/templates/index.html, error at line 10

Invalid block tag on line 10: 'static'. Did you forget to register or load this tag? 
1   <!DOCTYPE html> 
2   <html lang="en"> 
3     <head> 
4       <meta charset="UTF-8" /> 
5       <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> 
6     <meta http-equiv="x-ua-compatible" content="ie=edge" /> 
7       <title>Material Design for Bootstrap</title> 
8    
9       <!-- MDB icon
--> 
10      <link rel="icon" href="{% static 'assets/img/mdb-favicon.ico' %}" type="image/x-icon" /> 
11   
12      <!-- Font Awesome --> 
13      <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.11.2/css/all.css" /> 
14   <!-- Google Fonts Roboto --> 
15      <link 
16        rel="stylesheet" 
17        href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap" 
18      /> 
19      <!-- MDB --> 
20      <link rel="stylesheet" href="{% static 'assets/css/mdb.min.css' %}" >

追溯:

环境:

请求方式:GET请求网址:http://127.0.0.1:8000/core/

Django 版本: 2.1.15 Python 版本: 3.7.9 已安装的应用程序: [“django.contrib.admin”, “django.contrib.contribs”, “django.contrib.sessions”,“django.contrib.cent”消息,“django.contrib.staticfiles”, “core”] 安装的中间件: [“django.中间件.安全.安全中间件”, “django.contrib.session.中间件.会话中件”, “django.中间件.常见.通用中间件”, “django.中间件.csrf.CsrfViewMiddleware”,“djano.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.messagemiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware']

模板错误:在模板 /nowruzWebsite/core/templates/index.html 中,第 10 行错误 第 10 行上的块标记无效:“静态”。您是否忘记注册或加载此标签?1 : 2 :

追溯:

文件“/usr/本地/库/python3.7/站点包/django/模板/基.py”在解析 470.compile_func = 自我标记[命令]

在处理上述异常(“静态”)期间,发生了另一个异常:

内部34.response=get_response(请求)中的文件“/usr/local/lib/python3.7/site-packages/django/core/handlers/exception.py”

文件"/usr/local/lib/python3.7/site-包/django/core/handler/base.py"在_get_response126。响应=self.process_exception_by_middleware(e,请求)

_get_response 124中的文件“/usr/local/lib/python3.7/site-packages/django/core/handers/base.py”。response=wrapped_calllback(请求,*callback_args,**callback_kwargs)

文件"/nowruzSite/core/views.py"在索引5.返回渲染(请求,'index.html')

render 36.content=loader中的文件“/usr/local/lib/python3.7/site-packages/django/s捷径.py”。render_to_string(template_name,context,request,using=using)

文件“/usr/本地/库/python3.7/站点包/django/模板/加载程序.py”,render_to_string 61。模板 = get_template(template_name,使用 = 使用)

文件“/usr/local/lib/python3.7/site-packages/django/template/loader.py”位于get_template15.return-engine.get_template(template_name)中

get_template34.return template(self.engine.get_template(template_name),self)中的文件“/usr/local/lib/python3.7/site-packages/django/template/backends/djago.py”

get_template 144.template,origin=self.find_template(template_name)中的文件“/usr/local/lib/python3.7/site-packages/django/template/engine.py”

find_template 126中的文件“/usr/local/lib/python 3.7/site-packages/django/template/engine . py”。template = loader . get _ template(name,skip=skip)

文件“/usr/local/lib/python3.7/site-packages/django/template/loaders/base.py”位于get_template 30.contents,origin,origin。template_name、self-engine、,

文件“/usr/本地/库/python3.7/site-packages/django/template/base.py”init 156.自节点列表 = self.compile_nodelist()

compile_nodelist 194.return parser.parse()中的文件“/usr/local/lib/python3.7/site-packages/django/template/base.py”

parse 472.self中的文件“/usr/local/lib/python3.7/site-packages/django/template/base.py”。invalid_block_tag(令牌、命令、parse_until)

文件"/usr/local/lib/python3.7/site-pack/django/模板/base.py"在invalid_block_tag534."或加载此标记?" % ( token.lineno,命令)

异常类型:模板语法错误在 /core/异常值:第10行无效的块标记:“静态”。您是否忘记注册或加载此标记?

共有1个答案

应志用
2023-03-14

请检查这个片段。这些设置可以让我在html中显示图像。

文件夹结构

Settings.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)

urls.py 项目

from django.contrib import admin
from django.urls import path,include
from django.conf import settings
from django.conf.urls.static import static

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

urls.py应用程序

from django.urls import path
from . import views
urlpatterns = [
    path('', views.home, name="home"),
]

views.py

from django.shortcuts import render
def home(request):
    return render(request,"index.html")

索引.html

{%load static%}
<html>
    <head><title>Sample</title></head>
    <body>
        <h3>Hello World</h3>
        <img src="{% static 'images/shop.png' %}" />
    </body>
</html>
 类似资料:
  • 我在StackOverflow上看到了一些类似的事件。然而,这些似乎都不适用于我的情况。我遇到的问题是,我的RecyclerView正在工作,但没有显示任何内容。我已经运行了多个测试,试图找出它不工作的原因,但所有测试都支持它正常工作的事实。 getItemCount中的日志返回3,这是正确的数字。我只是不明白为什么它没有显示。我回头看了我在以前的活动中做的回收器视图,它们都在一定程度上匹配(其他

  • 我知道同样的问题已经被问过很多次了,但是我似乎真的没有在我的代码中发现阻碍JPanel类型的对象显示在JFrame中的错误。下面是扩展JFrame的类的构造函数: 当我运行main方法(这里没有显示)时,它只显示框架和按钮。如果有人能在这方面给点提示,我会非常感谢的。

  • 问题内容: 我有这些方法可以在MKMapView之间添加路由。我都有有效的pickUpDistanceLocation和dropOffDistanceLocation 这是在地图中添加路线叠加层的方法 我收到此错误,因为响应返回错误:400 打印错误时显示为 可选(“操作无法完成。(NSURLErrorDomain错误-1011。)”) 问题答案: 实际上,源变量和目标变量都为nil。因此,我从s

  • 问题内容: 我有一个图标图标,该图标在Chrome中没有显示(我不确定其他浏览器,因为我只使用Chrome),但是奇怪的是,如果我在显示的URL栏中键入图标的路径! 为什么没有出现图标? 问题答案: 快取 清除缓存。并测试其他浏览器。 有些可以通过添加URL参数来获取更新的图标的链接:在链接href之后,它更改了资源链接,因此无需缓存即可加载图标(感谢@Stanislav)。 网站图示用法 您是如

  • 首先,我对Liferay非常陌生,即使在阅读了这些文档之后,我可能也不知道自己在做什么。 我正在尝试在Liferay portlet中设置一个自定义jsp页面。我的jsp结构如下: 这些都放在我的portlet视图中。然而,我在我的portlet中看不到任何显示。我的所有源代码和映射都是正确的,但似乎我只能在portlet中显示常规文本。 我正在使用Liferay插件SDK和Eclipse的最新版

  • 每当我试图通过将鼠标悬停在对Eclipse中任何类的引用来访问Javadoc时,它要么说时发生了异常,要么说中找不到Javadoc。我已经阅读了StackOverflow上的几个解决方案,并尝试了它们,包括: 安装JDK并将其作为库添加到我的项目中 验证rt.jar中Javadoc的源是正确的URL。当我点击上面的时,它甚至会说这个位置可能是有效的 奇怪的是,如果我点击浏览器中的查看Javadoc

  • 问题内容: 我无法使LibGDX日志记录在Android Studio中工作。首先,我认为我的问题与之前的问题相同,但是请确保我的应用程序在调试时进行了更新。 选项按钮上的测试操作已执行,但我无法显示调试日志。 问题答案: 默认日志级别为。为了进行调用,您必须先调用一次(可能是Game构造函数的第一行,以便可以轻松更改它)。

  • 问题内容: 我没有提交就做了一些查询。然后应用程序被停止。 如何显示这些未清交易并提交或取消交易? 问题答案: 如何显示这些未清交易并提交或取消交易? 没有打开的事务,MySQL将在断开连接时回滚该事务。 您无法提交交易(IFAIK)。 您使用显示线程 参见:http : //dev.mysql.com/doc/refman/5.1/en/thread- information.html 这将无济