Django - Urls&Views

Django - Urls&Views 首页 / Django入门教程 / Django - Urls&Views

Django中的请求首先到达 urls.py ,然后转到 views.py 中的匹配函数。 views.py 中的Python函数从 urls.py 获取网络请求,并向模板(templates)提供响应。 它可能会根据 queryset 进入 models.py 中的数据访问层。

Django Urls and Views

如果无涯教程看一下应用程序的3层架构。视图就像业务逻辑层。 它是典型的 MVC (模型视图控制器)设计中的控制器 但是django的命名约定略有不同,称为 MVT (模型视图模板),其中: Model 是数据访问层, View 是业务逻辑层, Template是表示层。

Django MVT Architecture

Urls路径

Django默认情况下在项目下有一个 urls.py 文件。它还为 admin 应用提供了一个预定义的路径。 但是,django建议通过该应用程序下新创建的另一个 urls.py 映射所有资源。下面解释了它:

mysite-urls.py

    from django.contrib import admin  
    from django.urls import path, include

    urlpatterns = [  
        path('admin/', admin.site.urls),  
        path('myapp/', include('myapp.urls')),  
    ]      

myapp-urls.py

    from django.urls import path
    from . import views

    urlpatterns = [  
        path('', views.index),  # app homepage
    ]                 

查看函数

Url映射会将请求从项目网址重定向到应用程序网址,然后再重定向到相应的视图函数。 示例视图函数代码可能如下所示:

    def index(request):
        return render(request, 'index.html', {})
        
    or,
    
    from django.http import HttpResponse
    def index(request):
        return HttpResponse("Hello World") 
                                

在这里, request 是url请求映射和调用view函数。 render将给定的模板与给定的上下文字典结合在一起。 {} 表示可以添加到模板上下文的值的字典。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Go语言从入门到实战 -〔蔡超〕

大规模数据处理实战 -〔蔡元楠〕

SQL必知必会 -〔陈旸〕

性能工程高手课 -〔庄振运〕

分布式金融架构课 -〔任杰〕

李智慧 · 高并发架构实战课 -〔李智慧〕

中间件核心技术与实战 -〔丁威〕

JavaScript进阶实战课 -〔石川〕

超级访谈:对话道哥 -〔吴翰清(道哥)〕

好记忆不如烂笔头。留下您的足迹吧 :)