zoukankan      html  css  js  c++  java
  • Day17 Django的基础使用和结构

    整个Django的访问流程:

    浏览器   urls:   http://127.0.0.1:8000/timer 
    	url.py:
    	1, http://127.0.0.1:8000/timer     GET  无请求数据
    	2,url匹配 url:  url(r'^timer/',views.showtime)
    	3,showtime()函数
    	4,响应   时间字符换
    	
    	
    浏览器   urls:   http://127.0.0.1:8000/login 
    	url.py:
    	1,http://127.0.0.1:8000/login/  GET   无请求数据
    	2,url匹配 url(r"^login",views.login)
    	3,login()函数
    	4,响应  login.html函数
    	
    	返回的url是http://127.0.0.1:8000/valide
    	1,http://127.0.0.1:8000/valide    POST  有请求数据{"user":"yangshuai"}类似于这种
    	2,url匹配   url(r"^valide",views.valide)
    	3,valide函数
    	4,响应页面
    

    URL的详细讲解:

      urls这个文件如果引用的两个文件里有重名,可以起一个别名:from blog import views  as blog_views
       当如果多个规则都可以匹配成功的话,以第一条匹配成功的为准。

    rl配置系统的无名分组:例如查找一个年份里的页面,可以利用正则表达式来进行
    	
    	url配置系统的有名分组:
    		根据关键字来传参
    		url(r"^article/(?P<year_id>d+)/(?P<month_id>d+)$", blog_views.article_year)
    		前面必须跟上?P<参数名> ,后面跟上$ 符号,这样才可以
    		
    
    	
    	
    	映射分发:
    	当一个Django里边出现两个工程或者多个时,可以在每个项目里放入一个urls.py文件。
    	比如说现在有两个项目,一个blog,一个app01
    	总的url.py配置文件要定义的东西:
    	1,from  django.conf.urls import url,include
    	2,urlpatterns = [
        url(r'^admin/', admin.site.urls),
    	#路由分发app
    	url(r"^blog/",include(blog.urls))
    	]
    	3,在每个项目里创建urls.py 
    	然后在里边写每个配置就行了
    	from blog import views  as blog_views
    	from  app01 import  views as app01_views
    	
    	
    	url反向解析:
    	url(r"^login.html/",app01_views.login,name="login")
    	后边的网页中需要这么写:
    	<form action="{% url 'login' %}" method='post'>
    

    视图函数:

    	请求对象(请求对象):
    		request.GET()  :数据类型是字典  get请求数据
    		request.POST() :数据类型是字典  post请求数据
    		request.method() 请求方式
    		request.path    请求路径
    		request.get_full_path  请求全路径		
    	响应对象(响应对象):
    		Httpresponse()
    		render():
    			template:模板
    			context:上下文对象
    		redict()
    
  • 相关阅读:
    jQuery EasyUI API 中文文档 可调整尺寸
    jQuery EasyUI API 中文文档 链接按钮(LinkButton)
    jQuery EasyUI API 中文文档 手风琴(Accordion)
    jQuery EasyUI API 中文文档 表单(Form)
    jQuery EasyUI API 中文文档 组合(Combo)
    jQuery EasyUI API 中文文档 布局(Layout)
    jQuery EasyUI API 中文文档 拆分按钮(SplitButton)
    jQuery EasyUI API 中文文档 菜单按钮(MenuButton)
    jQuery EasyUI API 中文文档 搜索框
    jQuery EasyUI API 中文文档 验证框(ValidateBox)
  • 原文地址:https://www.cnblogs.com/sexiaoshuai/p/7811926.html
Copyright © 2011-2022 走看看