[英]How to organize GAE Modules app structure and code?
我有一些GAE應用程序,我想分成三個模塊: default
( www
), mobile
和api
但我在理解模塊和如何組織代碼時遇到一些困難。
這是我到目前為止提出的簡化結構:
gae-app/
├── modules
│ ├── api
│ │ ├── app.yaml
│ │ └── src
│ │ └── main.py
│ ├── mobile
│ │ ├── app.yaml
│ │ └── src
│ │ └── index.html
│ └── www
│ ├── app.yaml
│ └── src
│ ├── main.py
│ └── templates
├── cron.yaml
├── index.yaml
└── queue.yaml
api
模塊提供了大量的API函數,並且可以自行運行。
mobile
模塊只是一堆html + js,通過ajax與api
模塊一起正常工作。
default
( www
)模塊有一天會變得像只包含html + js文件的mobile
模塊,並通過ajax使用api
模塊,但是現在大多數模板都是通過jinja2生成服務器端的,這引起了一些問題。
問題:
由於api
和default
( www
)模塊現在都在使用數據存儲區的服務器端,我在哪里將數據存儲模型保留在此映像/結構中? 除此之外,他們都共享一些圖書館,我在哪里保留它們? 我是否在應用程序的根文件夾中創建一個新的“ lib ”文件夾並將公共/共享文件存儲在那里,然后將其符號鏈接到每個模塊? 我正在尋找一些最佳實踐。
使用單獨的git repos使所有這些工作的最佳方法是什么? 我希望我的每個模塊都有自己的存儲庫。 如何使用Q1中的共享模型/庫? GAE應用與模塊似乎只允許一個dispath.yaml
/ cron.yaml
/ index.yaml
/ queue.yaml
的/ etc每個應用程序(而不是每個模塊),使該回購會對這些文件?
我意識到問題沒有一個正確的答案,但我正在尋找最佳實踐。 請注意,我剛剛開始使用模塊,所以我理解它們的工作原理可能完全錯誤。
關於第一個問題:是的,您可以創建/ lib文件夾,將其放在文件夾結構的根目錄中,並從那里引用所有常用代碼。 www和api模塊都應該能夠訪問(共享)此代碼。
第二個問題由@Lipis回答:查看此鏈接: 如何在另一個存儲庫中使用git存儲庫?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.