如果不拆分應用,views.py和models.py文件過於臃腫,可以按照如下方法進行拆分,目錄結構:

models必須是包(也就是存在__init__.py):

__init__.py文件內容:
from .gradeModel import * from .personModel import * from .studentModel import *
在定義model的類中加一個內部類Meta:
from django.db import models
from app.models import Grade
class Student(models.Model):
s_name=models.CharField(max_length=16)
s_grade=models.ForeignKey(Grade, on_delete=models.CASCADE)
class Meta:
app_label = 'Student'
views也是包

__init__.py文件內容:
from .person import *
services作為服務層,復雜的業務邏輯可以放到里面,通過view調用

整體目錄結構:

