簡體   English   中英

如何組織GAE模塊的應用程序結構和代碼?

[英]How to organize GAE Modules app structure and code?

我有一些GAE應用程序,我想分成三個模塊: defaultwww ), mobileapi但我在理解模塊和如何組織代碼時遇到一些困難。

根據這里找到的圖像這是一個應用程序應該是什么樣子。 谷歌推薦的GAE App結構

這是我到目前為止提出的簡化結構:

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模塊一起正常工作。

  • defaultwww )模塊有一天會變得像只包含html + js文件的mobile模塊,並通過ajax使用api模塊,但是現在大多數模板都是通過jinja2生成服務器端的,這引起了一些問題。


問題:

  1. 由於apidefaultwww )模塊現在都在使用數據存儲區的服務器端,我在哪里將數據存儲模型保留在此映像/結構中? 除此之外,他們都共享一些圖書館,我在哪里保留它們? 我是否在應用程序的根文件夾中創建一個新的“ lib ”文件夾並將公共/共享文件存儲在那里,然后將其符號鏈接到每個模塊? 我正在尋找一些最佳實踐。

  2. 使用單獨的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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM