mar 13
Szablon projektu na Google AppEngine
Alan deLevie zrobił szablon aplikacji na Google AppEngine, który ma być lepszy i wygodniejszy w użyciu od domyślnego, dostarczanego wraz z SDK. Opiera się on na tym, co dostarcza Google (tzn. szablony Django i WebApp). Ja używam innej narzędziówki, więc mój szablon jest zupełnie inny:
proj-name
apps[1]
babel
contrib[2]
gaeutils
datastore[3]
jinja2
media[4]
css
img
js
pytz
sitelib[5]
utils
templates
werkzeug
wtforms
Kilka rzeczy wymaga pewnego objaśnienia. W katalogu apps[1] znajdują się aplikacje (używając terminologii Django) i mój własny kod serwisu. Do contrib[2] trafiają gotowe moduły i pakiety narzędziowe, jak GAEUtilities czy procesory markupu. Katalog datastore[3] zawiera storage, bo nie chcę go przechowywać w /tmp (ginie przy restarcie systemu a ja nie lubię być zaskakiwany...). W media[4] znajdują się statyki, czyli m.in. również robots.txt oprócz zwyczajowych obrazków, styli i javascriptu. W sitelib[5] jest kod biblioteczny związany z tym konkretnym projektem (w root) i specyficzny dla AppEngine (w utils). Katalogi z pakietami narzędziowymi (np. Babel czy Jinja) są podlinkowane z katalogu, w którym mam lokalną kopię repozytorium z bibliotekami. Oprócz tego w katalogu głównym projektu jest normalny boilerplate (app.yaml, index.yaml, main.py) oraz moduł application.py, w którym mam zdefiniowaną klasę aplikacji WSGI.
Jak do tej pory ten szablon sprawdził się w 3 aplikacjach (w tym także w tej, którą właśnie oglądasz).