4.快速上手
4.1再写一个页面
需要写url与函数之间的对应关系
-url -> 函数(创建关系)
views 再写上一个视图函数(写页面)
4.2 templates模板
如果要返回一个HTML文件,使用:
def user_list(request):
return render(request,"user_list.html")
那么它会去哪里找这个“user_list”呢?
在app01里创建文件templates,在templates中创建user_list.html
去app01目录下的templates目录寻找user_list.html(根据app的注册顺序,逐一去他们的templates目录中寻找)
4.3静态文件
在开发过程中一般将图片、CSS、js都会当作静态文件处理,静态文件也不可乱放。 都放在static目录中。在static下创建css、img、js、plugins。要引用的时候:
普通引用
在Django中直接引用:
5 模板语法
模板语法本质:在HTML中写一些占位符,由数据对这些占位符进行替换和处理
<div>{{ n2 .0}}</div> 是对列表的索引,代表取第一个值,为 管理员
或者加入一个for循环,找里面的元素
<div>
{% for item in n2 %}
<span>{{ item }}</span>
{% endfor %}
</div>
如果创建一个字典
user_info={"name":"Mary","salary":10000,'role':"CTO"} 'n3':user_info
获取里面的值{{ n3.name }}
或者循环:
<ul>
{% for item in n3.keys %}
<li>{{ item }}</li>
{% endfor %}
</ul>
如果键和值分开:
<ul>
{% for k,v in n3.items %}
<li>{{ k }}={{v}}</li>
{% endfor %}
</ul>
列表里面套字典
data_list=[
{"name":"Mary","salary":10000,'role':"CTO"}
{"name":"Bary","salary":10000,'role':"CTO"}
{"name":"Cary","salary":10000,'role':"CTO"}
]
其中{{ n4.1}} {"name":"Bary","salary":10000,'role':"CTO"}
{{ n4.1.name }} Bary
模板语法中支持条件语句
{% if n1=="韩超" %}
<h1>yes</h1>
{% else %}
<h1>no</h1>
{% endif %}
内在逻辑:
6 请求与相应
如果你进入联通官网,但它跳转到了百度,一定是联通官网反馈给了浏览器,浏览器找到百度。