2010-05-03 57 views
2

我有兩個模型(稱爲A和B),它們是獨立的並且具有獨立的方法。我想添加一些在兩種模型上運行的方法。跨越不同模型的Django方法的結構

例如,ADDX()將創建由這兩種模型對象和B.

什麼是結構在這種情況下,代碼的最佳方式是什麼?該方法屬於任何模型的方法都沒有意義。爲這種'抽象'模型編寫服務的標準是什麼?

回答

0

我不知道我完全理解你的問題。你在問在哪裏放置常用方法,或者你在問如何調用一種方法來處理兩個類?

如果你只是需要有共同的方法,那麼我將有兩種型號的子類的抽象父模型:

class ParentModel(models.Model): 

    class Meta: 
     abstract = True 

    def some_shared_method(self): 
     ... 

class A(ParentModel): 
    ... 

class B(ParentModel): 
    ... 

抽象元選項告訴Django不創造任何ParentModel實際的數據庫表。它只是在那裏舉行的方法。

檢查了這一點進一步的細節:http://docs.djangoproject.com/en/dev/topics/db/models/#id6

+0

這正是我一直在尋找......我不想做一個服務,但是,做我需要什麼。謝謝! – Duncan 2010-05-03 09:44:46

+0

不客氣! – Hassan 2010-05-03 19:23:50