2013-04-03 74 views
3

我對正在開發的django web應用程序的正確/標準/建議方法感興趣。 我在編程方面有實際經驗,但是我擔心我的實現效率,因爲我沒有太多有關MVC和相關原理的理論知識。mvc控制器單一責任原則和POST請求

我有幾種形式,必須從我的數據庫(通過AJAX POST請求)獲取各種數量的信息,所有這些都與用戶需要執行的單個操作有關(例如:購買房屋,系統需要關於房子,客戶,以前的所有者,付款方式等)。因此,POST請求在一個頁面中會非常頻繁。

我的問題是: 我應該有一個控制器負責POST請求的每個不同「類型」(一個控制器用於「房屋」請求,一個用於「客戶端」等),或者可以有一個「銷售數據獲取器」控制器,通過每個請求的參數處理所有相關的POST請求檢查,並相應地與模型通信?

如果我沒有正確使用問題系統,我很抱歉,這是我的第一個問題。

編輯:總失誤在我的問題!是的,應用程序是在PYTHON中,我確實使用PHP來完成之前的項目。

在此先感謝!堆棧溢出已經成爲救星很多次了。

+0

我很好奇Django PHP web應用程序是如何開發的,特別是考慮到Django是* Python web框架*並且與PHP無關! –

+1

@Francis阿維拉:是的,你完全正確。我的錯誤,我只是無意中混淆了事情。我確實使用PHP和CakePHP作爲以前的項目,但目前的項目是Python,框架是Django,數據庫PostgreSQL。我編輯了這個問題。我很抱歉。 – dayala

回答

1

在一般情況下,您將希望爲每個'類型'的請求都有一個單獨的控制器。這有助於簡化代碼,而不必處理任何「特殊情況」,並且通常更容易重用。

+0

感謝您的回答!我認爲你是對的,並且我懷疑這是正確的方式,儘管我已經以其他方式實施了一些控制器,但是因爲我不確定,所以我希望有人能夠提供一些理論證明或文檔,首選方式。 我會upvote你,但我還不能:/ – dayala

+0

也許我會等待一點點,看看有人可以提供另一個角度/來源之前接受你的答案,是嗎? – dayala

+0

當然。另請注意,爲限制HTTP請求的數量,您可能需要考慮的另一種方法是讓控制器收集給定頁面所需的所有數據,將其包裝在一個大的JSON字符串中,然後將其分割爲單獨的數據對象瀏覽器端。這有點複雜,在大多數情況下並不需要,但有時可能會很方便。 – Mchl