飞天使-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
相关推荐
cyforkk12 分钟前
09、Java 基础硬核复习:异常处理(容错机制)的核心逻辑与面试考点
java·数据库·面试
CC.GG27 分钟前
【Linux】进程控制(二)----进程程序替换、编写自主Shell命令行解释器(简易版)
linux·服务器·数据库
2301_7657031438 分钟前
开发一个简单的Python计算器
jvm·数据库·python
QCzblack1 小时前
第三周作业
数据库
Root_Hacker1 小时前
sql注入学习笔记
数据库·sql·web安全·网络安全·oracle·网络攻击模型
IT邦德1 小时前
基于OEL8环境的图形化部署Oracle26ai
数据库·oracle
一心赚狗粮的宇叔1 小时前
mongosDb 安装及Mongosshell常见命令
数据库·mongodb·oracle·nosql·web·全栈
naruto_lnq1 小时前
Python生成器(Generator)与Yield关键字:惰性求值之美
jvm·数据库·python