2010-07-18 32 views
0

我正在做一個Django模型裝飾器,它需要一個Django模型並給它一些額外的方法。Django模型子類沒有改變數據庫名稱

Django使用以下命令爲此模型創建數據庫名稱:'%s_%s' % (app_name, class_name)。在裝飾模型時,表格名稱突然從裝飾器的應用程序名稱和類名稱中導出,而不是原始類型(這在Python中是正確的)。

但是,我想維護模型的原始表名,是否有辦法告訴Django使用超類來確定數據庫名稱,或者一種方法來檢索表名並將其應用於模型的Meta類。

回答

1
+0

沒錯,但以覆蓋它。我可以獲得超類的名稱和應用程序名稱,但是我假設它尚未被覆蓋。如果有一種方法可以獲得超級類的表名,並將'db_table'設置爲該類,它就可以工作。 – 2010-07-18 18:42:02

+0

已更新。檢查代理對象,看看是否足夠:-) – eruciform 2010-07-18 18:44:14

+0

謝謝eruciform,我也發現了。 '代理=真'這個招數歡呼! – 2010-07-18 18:50:56

相關問題