我对python和app引擎相对较新,我刚刚完成了我的第一个项目。 它由几个* .py文件(通常是网站上每个页面的py文件)和每个py文件的temple文件组成。 另外,我有一个很大的PY文件,它有许多常用于很多页面的函数,我还声明了db.Model的类(即数据存储类)。
我的问题是安排这些文件的约定(如果有的话)是什么。 如果我使用数据存储类创建一个model.py,它应该在不同的包中吗? 我应该在哪里放置模板文件和处理每个页面的所有py文件(它们应该与一个常见的PY文件位于同一目录中)吗?
我试图在网上寻找MVC和这样的实现,但是很少。
谢谢,
乔尔
答案 0 :(得分:3)
我通常以这种方式组织我的项目:
project
main.py
README
models
bar.py
foo.py
views
foolist.hml
barlist.hml
controllers
controller1.py
controller2.py
api
controllerapi.py
helpers
utilities.py
lib
extfoo.py
db
foo.db
test
test.py
看看这个post;这是一篇关于如何构建项目的非常好的文章(不是在python中,但没关系)。
答案 1 :(得分:3)
通常我会这样组织:
project/
main.py
models.py
app.yaml
index.yaml
templates/
main.html
foo.html
...
styles/
project.css
js/
jquery.js
project.js
images/
icon.png
something.jpg
我的所有处理程序都在main.py中,我的所有模型都在models.py等中。
如果我有很多处理程序,并且我可以轻松地将一些处理程序的功能与其他处理程序分开(比如taskqueue处理程序与请求处理程序与xmpp / email处理程序),我将添加另一个foo_handlers.py
到混合,但通常我只是在main.py
但话说回来,我倾向于不编写非常复杂的Python App Engine应用程序......