Структура проекта Python и App Engine

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

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

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

Благодаря,

Joel

  • Как объединить тестовые конечные точки Google Cloud
  • Загрузить файл в общедоступную папку на Google Диске - с помощью Python и без проверки подлинности?
  • уже выполненная транзакция
  • Google App Engine - как расширить db.IntegerProperty
  • Доступ к связанному объекту без использования объекта в App Engine
  • Ошибка Google Cloud Messaging HTTP 400: неверный запрос
  • Измените IntegerProperty на FloatProperty существующего AppEngine DataStore
  • API облачного видения Google: «В запросе недостаточно областей проверки подлинности».
  • 2 Solutions collect form web for “Структура проекта Python и App Engine”

    Обычно я организую свои проекты таким образом:

    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, но это не имеет значения).

    Обычно я так устроен:

     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 / электронной почты). Я добавлю еще один foo_handlers.py в микс, но обычно Я просто впишу их в main.py

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

    Interesting Posts

    Можно ли переключаться между python 2 и 3 в Sublime Text 3? (Windows)

    unbound method должен быть вызван с экземпляром X в качестве первого аргумента (вместо этого используется экземпляр X)

    Как установить PyGObject с поддержкой Python 3

    Использование numpy.take для более быстрой причудливой индексации

    Построение эллиптических орбит

    Python объединяет два списка со всеми возможными перестановками

    Переключение Django, для блока кода, переключает язык, поэтому переводы выполняются на одном языке

    ImportError: невозможно импортировать имя inplace_column_scale

    Что делает hash в python?

    Что такое метод работы .join () для процесса многопроцессорности Python?

    Выполнить несколько программ последовательно в одной командной строке Windows?

    Некоторые сомнения в моделировании некоторых функций библиотеки libsvm / scikit-learn в python

    Длительное (> 20 миллионов элементов) суммирование массива в python numpy

    Как проанализировать «<media: group>» с помощью feedparser?

    перечислить список словарей

    Python - лучший язык программирования в мире.