飞天使-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
相关推荐
Doro再努力6 分钟前
【MySQL数据库09】外键约束与多表查询基础
数据库·mysql
ss27328 分钟前
019:深入解析可重入互斥锁:原理、实现与线程安全实践
java·数据库·redis
O***Z6161 小时前
三分钟内快速完成MySQL到达梦数据库的迁移
数据库·mysql
友友马2 小时前
『QT』窗口 (一)
开发语言·数据库·qt
q***78372 小时前
SQL实现md5加密方法
数据库·sql
q***61412 小时前
Spring中Aware的用法以及实现
java·数据库·spring
红树林072 小时前
渗透测试之sql注入--报错注入
数据库·sql·安全·web安全
菜鸟小九3 小时前
mysql(锁)
数据库·mysql·oracle
c***42103 小时前
【Sql Server】随机查询一条表记录,并重重温回顾下自定义函数的封装和使用
数据库·性能优化
q***44813 小时前
PostgreSQL的备份方式
数据库·postgresql