zoukankan      html  css  js  c++  java
  • Django学习笔记(二)视图函数

    一、url映射

    1、为什么回去urls.py文件中找映射?

    在‘settings.py’文件中配置了‘ROOT_URLCONF’为‘urls.py’.所有的django回去urls.py中寻找。

    2、在“urls.py”中我们所有的映射,都应该放在变量"urlpatterns"中。

    3、所有的映射不是随便写 的,而是用“path”函数或者是“re_path”函数进行包装的。

    注意

    • 试图函数的第一个参数必须时request。这个参数绝对不能少。
    • 试图函数的返回值必须时'django.http.response.HttpResponseBase'的子类的对象。

    二、url传递参数

    1、采用在url中使用变量的方式:在path的第一个参数中,使用“<参数名>”的方式可以传递参数。然后在视图函数中也要写一个参数,视图函数中的参数必须和url中参数名称保持一致。另外url中可以传递多个参数。

    2、采用查询字符串的方式:在url中,不需要单独的匹配查询字符串的部分。只需要在视图函数中使用"request.GET.get('参数名称')"的方式获取。

    三、示例代码:

    • views.py
    from django.shortcuts import render
    from django.http import HttpResponse
    
    # Create your views here.
    #Url视图映射
    def eltmain(requset):
        return HttpResponse('自动化ETL')
    #Url视图传参
    def eltdetail(requset,etl_id):
        return HttpResponse(f'当前任务是{etl_id}')
    #Request传参
    def source_detail(request):
        source_id=request.GET.get('id')
        return HttpResponse(f'当前来源是{source_id}')
    • urls.py
    from django.contrib import admin
    from django.urls import path
    from django.http import HttpResponse
    from ETL import views
    
    #定义首页
    def index(request):
        return HttpResponse("首页")
    
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        #定义首页
        path('',index),
        #Url视图映射
        path('etl/',views.eltmain),
        #Url视图传参
        path('etl/<etl_id>',views.eltdetail),
        #Request传参
        path('sourcedetail/',views.source_detail)
    ]
  • 相关阅读:
    C#基础知识(以宝马,车,车轮为例)
    JAVA之本地图片复制
    JAVA获取PC每个盘符,获取每个盘符总大小,剩余空间大小
    Extjs window autoload
    jquery入门(一)
    extjs 鼠标滑过grid时产生提示grid列中的值
    poi导出
    Extjs 报表同值合并方法
    强大的grep命令
    job
  • 原文地址:https://www.cnblogs.com/Evan-fanfan/p/9555338.html
Copyright © 2011-2022 走看看