2011-05-25 56 views
0

我正在使用geodjango創建數據存儲庫,並且有一個基本模型來存儲形狀文件的內容。我想擁有多個表格,並且動態生成屬性。有處理用戶的表格,以及處理每個形狀文件的表格。如何使用django創建多個模型?

我想知道的是,我有一個基本模型,可以爲每個形狀文件創建一個表格。我想要的是另一張與用戶打交道的表格。那麼,我應該在同一個模型中創建另一個模型或另一個類嗎?

因此,如果我想要有多個表,我應該創建多個模型還是多個類?

如果有多個模型,那我該如何將它鏈接到一個視圖?

+0

聽起來好像你在模型文件中混淆了'models.py'和模型類。 – Pureferret 2015-01-27 16:35:50

回答

1

模型僅僅是數據庫表的程序化表示。有一對一的關係,即爲每個模型獲取數據庫表。

模型的概念與視圖的概念是分開的。視圖只是響應HTTP請求的方法。在任何視圖中,您都可以導入和使用任何模型;您只需導入模型並根據需要做任何事情。

聽起來好像你對Django和MVC(模型 - 視圖 - 控制器)體系結構的整體概念非常陌生。你應該花一些時間閱讀Django Book;它在網上免費提供。特別關注ModelsViews的章節。 Django Documentation稍高一點,但有豐富的信息。

+0

我們應該澄清一下,嚴格來說,模型和表格之間沒有一對一的關係。例如,如果您有兩個模型,一個模型與另一個模型的ManyToManyField,則您將爲每個模型_和_一個鏈接表:2個模型,3個表格。 – Spycho 2012-02-09 11:00:33

+1

從某種意義上說,是的。另一方面,有一個隱含的「模型」與第三個表相關。這只是你沒有定義它:Django的確如此。不過,我還是故意過於簡單化。 – 2012-02-09 15:20:02

+0

我只是覺得我應該提及它的清晰。 – Spycho 2012-02-16 13:31:09

相關問題