''' urlpatterns = [ url(正则表达式, views视图函数,参数,别名), ] 参数说明: 一个正则表达式字符串 一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串 可选的要传递给视图函数的默认参数(字典形式) 一个可选的name参数 '''
python manage.py startapp app01(app01为项目名)
url(r'^articles/(\d{4})/(\d{2})/$', views.articles2), #articles2(request,组1参数,组2参数)
def articles2(request,year,month): return HttpResponse(year+"---"+month)
url(r'^articles/(?P<y>\d{4})/(?P<m>\d{2})/$', views.articles3) #articles3(request,y=对应参数,m=对应参数)
def articles3(request,y,m): #参数y和m必须与分组名一致,因为是按照关键字传参,位置随意 return HttpResponse(y+"-----"+m)
第一次网页请求:
请求url: http://127.0.0.1:8000/login/ 请求类型:GET 无请求数据
login/-------> views.login------>login()
响应到一个login.html页面
第二次按钮提交:
请求url: http://127.0.0.1:8000/login.html/ 请求类型:POST 有请求数据 {"user":"alex","pwd":"123"}
login.html/-------> views.login------>login()
响应的return redirect("/index/")到浏览器,通知浏览器再发送请求:"/index/"
请求url: http://127.0.0.1:8000/index/ 请求类型:GET 没请求数据
index/ --->url(r'^index/', views.index),---->index()
响应一个index.html
def index(request):
lis=[111,222,333]
dic = {"name": "alex"}
class Person():
def __init__(self,name,age):
self.name=name
self.age=age
def dream(self):
return ("dream.....")
alex=Person(name="alex",age=34)
egon=Person(name="egon",age=9000)
nacha=Person(name="nacha",age=3)
person_list=[alex,egon,nacha]
return render(request,"index.html",{"lis":lis,"dic":dic,"person_list":person_list})
<body>
<hr>
<p>{{lis.2 }}</p> //通过索引取,结果:222
<p>{{ dic.name}}</p> //通过key取,结果:alex
<p>{{ person_list.1.name }}</p> //通过索引取到对象,通过对象属性取到属性值
<p>{{ person_list.1.age }}</p>
<hr>
{% for person in person_list %} //通过循环取到对象,根据对象属性取到属性值
<p>{{ person.name }},{{ person.age }}</p>
{% endfor %}
<hr>
{{ person_list.1.dream }} //可以取到对象的方法,前提是此方法不需要参数,且有返回值,且取值时不需要括号
</body>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有