之前的许多目录都是自建,比如views.py就是手动创建的。数据库操作用的都是pymysql语句,尽管封装成了函数以及对象,但应用场景更多的还是其自带的ORM来对数据库进行操作。

start app

进入project目录,并创建app:

1
> python manage.py startapp manageapp1

通常,当整个Web应用够大时,不同的app对应于不同的业务操作。

app的目录下:

  • admin.py → Django自带后台管理的相关配置
  • modal.py → 写类,根据类创建数据库表
  • test.py → 单元测试
  • views → 业务处理(可以是目录或Python文件)

路由分发

不同的app之间的url可能会有冲突,需要有路由分发机制来保证url的独立。

在每个app目录下创建urls.py实现自身业务的url,在project同名目录下的urls.py分发:

1
2
3
4
5
from django.urls import path, re_path, include
urlpatterns = [
path('manageapp1/', include('manageapp1.urls')),
path('manageapp2/', include('manageapp2.urls')),
]