Структура проекта Python и App Engine - PullRequest
6 голосов
/ 30 марта 2010

Я относительно новичок в Python и движке приложений, и я только что закончил свой первый проект. Он состоит из нескольких * .py файлов (обычно py-файла для каждой страницы на сайте) и, соответственно, файлов Temple для каждого py-файла. Кроме того, у меня есть один большой PY-файл, который имеет много функций, которые являются общими для многих страниц, в том числе я объявил классы db.Model (то есть виды хранилищ данных).

Мой вопрос заключается в том, каков порядок (если таковой имеется) размещения этих файлов. Если я создаю model.py с классами хранилища данных, должен ли он быть в другом пакете? Куда мне поместить файлы шаблонов и все файлы py, которые обрабатывают каждую страницу (должны ли они находиться в том же каталоге, что и один большой общий файл PY)?

Я пытался найти MVC и такие реализации в Интернете, но их очень мало.

Спасибо

Joel

Ответы [ 2 ]

3 голосов
/ 30 марта 2010

Обычно я организовываю так:

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 и т. Д.

Если у меня много обработчиков, и я могу легко отделить функциональность некоторых обработчиков от других (таких как обработчики задач, обработчики запросов против обработчиков xmpp / email), я добавлю еще foo_handlers.py в смесь , но обычно я просто втискиваю их всех в main.py

Но опять же, я не склонен писать чрезвычайно сложные приложения Python App Engine ...

3 голосов
/ 30 марта 2010

Я обычно организую свои проекты следующим образом:

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

Посмотрите на этот пост ; Это действительно отличная статья о том, как структурировать проект (не на python, но это не имеет значения).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...