Day17

            manage.py:Django项目里面的工具,通过它可以调用django shell和数据库等

    settings.py:包含了项目的默认配置,包括数据库信息,调试标志以及一些工作的变量

    urls.py:负责把URL模式映射到应用程序

    model.py:负责数据库处理

    view.py:处理一些业务逻辑

    admin.py:Django自带的一个后台数据管理系统

关于URL路由系统           

from django.conf.urls import url,include
from django.contrib import admin
from app import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    # 静态路由
    url(r'^login/',views.login),        # 如 http://127.0.0.1:8080/login
    # 为路由取别名,这样,在地址修改的时候,前端不需要修改地址
    url(r'^register/',views.register,name='reg'),
    # 动态路由,可以用来做分页
    # 无名分组,views里面的函数名参数可任意
    url(r'^article/(d{4})$',views.article),    # 如 http://127.0.0.1:8080/article/2017
    # 有名分组,view里面的函数名必须是year和month
    url(r'^arcticle/(?P<year>d{4})/(?P<month>d{2})',views.arcticle),
    # 路由分发
    url(r'^app/',include('app.urls')),
]

 视图函数views          

   在http请求中产生两个核心对象,所在位置是,django.http:

 http请求:HttpRequest对象

 http响应:HttpResponse对象

def register(request):
    '''
    request就是HttpRequest对象
    HttpResponse常用的扩展对象
        render:页面渲染,可将参数以字典的形式传递给页面 也可以通过locals()将参数传递过去,没有进行页面跳转,url没有改变
        redirect:页面跳转,url发生改变
    :param request:
    :return:
    '''
    # 获取请求方法
    if request.method == "GET":
        '''
        对注册来分析,当我们进入注册页面的时候,一般都是GET请求
        '''
        # 获取GET里面的信息
        ret = request.GET
        print("GET信息",ret)  # 输出 GET信息 <QueryDict: {}> 是一个字典对象
        return render(request,"register.html")
    elif request.method == "POST":
        '''
        通过表单提交之后,变成了POST请求
        '''
        # 获取POST里面的信息
        ret = request.POST
        print("POST信息",ret)
        '''
        输出  POST信息 <QueryDict: {'csrfmiddlewaretoken': ['oeKNHGKKm9Ip6B4Y2bfZM16lD2ECoTylPzX7rKzEUO5baf5Dfw4uB2zz5zz61fL9'], 'username': ['Jason'], 'pwd': ['123'], 'gender': ['1']}>

        也是一个字典对象,可以通过句点获取表单提交过来的数据
        '''

        return redirect("/login/")

def login(request):
    return render(request,"login.html")


模板系统Template            
 

  组成:HTML代码+逻辑控制代码

  逻辑控制代码的组成

  ①变量,使用双大括号来引用变量:{{ var_name }}

# 视图函数
def index(request):
    people={
        "username":"Jason",
        "age":18,
        "gender":"男"
    }

    username="Jason"

    return render(request,"index.html",{"username":username,"people":people})
原文地址:https://www.cnblogs.com/jnbb/p/7816101.html