Django MTV

我们或许都听说过MVC模式。MVC是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码。Django也有其设计模式,我们称之为MTV。

image-20220224161948990.png

如果之前没有开发经验的话,看起来还是比较抽象,我们来写个hello world,这样或许就比较好理解了。

写个hello world

打开我们的项目,在project下面新增templates文件夹(注意!固定写法),新增hello.html文件,body部分输入hello world,如图所示
image-20220224162859821.png
打开project\views.py,输入如下代码:

  1. from django.http import HttpResponse
  2. from django.shortcuts import render
  3. # Create your views here.
  4. def index(request):
  5. if request.method == 'GET':
  6. return render(request, "hello.html")
  7. else:
  8. return HttpResponse("要用get请求访问")

打开caseplatform\urls.py,输入如下代码:

  1. from project import views # 新增
  2. urlpatterns = [
  3. path('admin/', admin.site.urls),
  4. path('index/', views.index), # 新增

启动我们的项目
(env) D:\code\caseplatform>python manage.py runserver

Watching for file changes with StatReloader
Performing system checks…

System check identified no issues (0 silenced).
February 24, 2022 - 16:32:49
Django version 3.2.3, using settings ‘caseplatform.settings’
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

浏览器访问http://127.0.0.1:8000/index/,出现下图所示,说明访问成功。
image-20220224163422746.png
至此,hello world写完了,是不是感觉哪里缺点什么?
项目创建好了,应用创建好了,先来写个hello world吧。我们上面说MTV,T即templates(视图)用到了,V即views用到了,那么M(模型)呢?没错,因为我们没有用到数据库,所以缺少了对数据库的操作,但是不影响,我们后面慢慢学习。