飞天使-template模版相关知识

遇到报错django.template.exceptions.TemplateSyntaxError: 'staticfiles' is not a registered tag library. Must

复制代码
ROOT_URLCONF = ''

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',
                
            ],
            #添加下面内容
            'libraries': { # Adding this section should work around the issue.
                'staticfiles' : 'django.templatetags.static',
            },
        },
    },
]
解决办法参考链接:https://www.cnblogs.com/yizhipanghu/p/15346297.html

html 模版中新增一个图片

复制代码
    <div id="title">
        <div><img src="{% static "imgs/stu04.jpg" %}"></div>
        <div>学生信息</div>
    </div>
#STATICFILES_DIRS --- 全局变量定义了存储静态文件集合
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
    os.path.join(BASE_DIR, 'abc'),
    os.path.join(BASE_DIR, 'app01', 'static')
]

url 跳转-A标签(链接)

复制代码
        <div>
             <div><a href="/"><img src="{% static "yk-logo-1220.png" %}"></a></div>
             <div id="detail">综艺首页</div>
        </div>
        ```
 
 ####  redirect 关键字处理跳转
 用户没有登陆直接跳转到登陆页面
 from django.shortcuts import render
from django.shortcuts import redirect

# Create your views here.


def index(request): # 首页
    # url记录登录名 --- ? username=alice
    username = request.GET.get("username")
    # 如果获取到username值,直接显示首页,获取不到;调到登录页

    if username:
        return render(request, 'index.html')
    else:
        # 跳转到登录页
        return redirect("/login/")

多app下的templates 环境准备

复制代码
setting 里面设置
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'home',
    'tv',
    'movie',
]

多app下模块的应用

复制代码
每个app 会有一个index.html ,多个app会出现重复情况
则每个app下面可以建立一个相同app名字,比如tv ,tv/index.html ,xx ,xx/index.html
相关推荐
island131439 分钟前
【Redis#10】渐进式遍历 | 数据库管理 | redis_cli | RES
数据库·redis·bootstrap
心想事成的幸运大王1 小时前
Redis的过期策略
数据库·redis·缓存
倔强的石头_1 小时前
CentOS 上安装KingbaseES(ISO包)详细教程
数据库
2401_897930062 小时前
使用Docker轻松部署Neo4j图数据库
数据库·docker·neo4j
诗句藏于尽头2 小时前
Django模型与数据库表映射的两种方式
数据库·python·django
寻星探路2 小时前
数据库造神计划第六天---增删改查(CRUD)(2)
java·大数据·数据库
盖世英雄酱581363 小时前
Read timed out问题 排查
java·数据库·后端
云动雨颤4 小时前
Spring Boot配置优化:Tomcat+数据库+缓存+日志,全场景教程
数据库·spring boot·tomcat
RestCloud4 小时前
Kafka实时数据管道:ETL在流式处理中的应用
数据库·kafka·api