标签:enc str assets cut 个数 子应用 install lock 文件中
为了方便演示,所以我们这边创建一个子应用temp来编写
python manage.py startapp temp
注册子应用到settings.py文件中
INSTALLED_APPS = [
# ...
"temp",
]
在子应用temp目录下创建子路由文件urls.py,代码:
from django.urls import path
from . import views
urlpatterns = [
?
]
在总路由中, 添加当前子应用temp的urls路由列表
from django.contrib import admin
from django.urls import path,include
urlpatterns = [
path(‘admin/‘, admin.site.urls),
# ...
path(‘temp/‘, include("temp.urls")), # namespace就是属于include的第二个参数, 用于进行反向解析
]
?
基于MVT模式, django规定, 我们要创建界面, 需要创建视图.每一个不同的url地址对应一个视图函数.视图中的外观,则应用由前端代码来完成.但是我们不会让前端工作人员学习了django再开发.所以我们需要提供一个模板目录让前端人员,放置他们的前端,并和我们的服务端django代码进行隔离.
在项目中创建模板目录templates
在settings.py文件中, 在TEMPALTES配置项.指定上面创建的模板目录地址,基于BASE_DIR项目根目录来设置路径
# templates 模板目录
TEMPLATES = [
{
# backend驱动,加载静态文件的驱动, 核心类库, DjangoTemplates 我们通常称之为 django的模板引擎
‘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‘,
],
},
},
]
在temp.views.py文件中创建一个视图函数,例如叫index,显示模板中的html内容.
from django.shortcuts import render
from django.http.response import HttpResponse
# Create your views here.
def index(request):
?
return
?
?
?
?
(request, template_name="index.html")
?
?
def list(request):
?
return render(request, template_name="goods/list.html")
在上面视图中render中设置的template_name对应的就是模板文件名或者模板路径,则可以在templates模板目录下进行创建
在for循环输出内容的时候, 模板系统中会默认提供一个 forloop
的对象给我们用于操作循环中的次数
forloop.counter 显示本次循环中的次数[序号],从1开始
forloop.counter0 显示本次循环中的次数[序号],从0开始
forloop.revcounter0 显示本次循环中的次数[序号],倒序显示,到0
forloop.revcounter 显示本次循环中的次数[序号],倒序显示,到1
forloop.first 当本次属于循环的第一次,则结果为True
forloop.last 当本次属于循环的最后一次,则结果为True
过滤器的文件地址: django/template/defaultfilters.py
safe,禁用转义,告诉模板这个变量是安全的,可以解释执行
length,长度,返回字符串包含字符的个数,或列表、元组、字典的元素个数。
default,默认值,如果变量不存在时则返回默认值
date,日期,用于对日期类型的值进行字符串格式化
过滤器的使用
{# 过滤器 #}
<p>{{ title | upper | lower }}</p>
{{ logo | safe }}
?
{{ lve | length }}
{{ lve | first }}
?
{{ born | date:"Y-m-d H:i:s" }} {# 2019-11-11 00:00:00 #}
标签:enc str assets cut 个数 子应用 install lock 文件中
原文地址:https://www.cnblogs.com/yhxy/p/14598385.html