Django model、view拆分,添加service


如果不拆分應用,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調用

 

 

 

整體目錄結構:

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM