django Proxy models ---- 代理模式


一個proxy models 不會在數據庫中創建新的表、而是與它的基類共用同一個表

  1、model 的定義:

from django.db import models

# Create your models here.


class Person(models.Model):
    name=models.CharField(max_length=8)

class ProxyPerson(Person):
    class Meta:
        proxy=True

    def doSomething(self):
        pass

# 定義了一個ProxyPerson類、proxy 和abstract 寫法上並沒有什么不一樣;
# 只是把abstract=True 變成proxy=True就行了

  2、看數據庫端的表:

CREATE TABLE `ln_person` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(8) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


-- 只有person 對應的表、ProxyPerson不會有表與之對應

 

 

----


免責聲明!

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



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