1
我有一個大型的Flask項目(使用Flask-SQLAlchemy),它有一個core
組件,它涉及處理大量數據,然後將結果保存到數據庫。它有它自己的一套Flask-SQLAlchemy模型。拆分Flask應用程序?
還有一個web
組件,它爲API定義了一個Flask應用程序,爲web前端定義了另一個Flask應用程序,這兩個組件處理了core
組件的處理結果。 web
部分還定義了一些它自己的模型(用戶模型),其中core
組件不需要。
爲了便於開發和組織,我想將core
組件拆成單獨的項目,並將web
零件保留在其自己的項目中。這兩個組件已經相當分離,所以它應該是一個簡單的過程。
我弄不清楚的唯一部分是:web
組件如何訪問core
組件的模型?我不想在兩個項目中複製模型定義。
你能不能用setup.py爲核心創建一個python包並將其安裝到每個Web組件中? –
這就是我正在考慮的方法,但無法將我的頭圍繞處理數據庫遷移的好方法。如果任何'core'軟件包模型發生變化,會發生什麼?我會再試一次,謝謝。 – frnsys
如果是這樣的話,他們都使用完全相同的核心,爲什麼沒有API和Web前端調用的內部API?要麼或者讓網頁前端使用您的API前端 –