Я планирую разработать довольно тяжелое (~ 100 таблиц) веб-приложение с базой данных в python. Основное внимание уделяется предоставлению приятного и оптимизированного для задач интерфейса для людей, которые редактируют или перемещаются по данным. Другие фокусы:
Я много читал о django, турбогерах, пирамиде, веб-обозревателе,... но мне все еще трудно найти, с чего начать.
Моя текущая оценка подсказывает, что турбогеды - это путь. Пирамиду кажется слишком много, чтобы узнать. Джанго, похоже, слишком издательский. WebCore кажется немного незрелым, чтобы основать на нем такой проект.
Я что-то пропускаю? Существуют ли еще более подходящие рамки python? Является ли моя информация о некоторых из них неправильной? Какую структуру вы бы выбрали для этого проекта и почему?
Imo единственная часть django, которая может быть "слишком" ориентирована на публикацию, является администратором, но я видел много приложений django, которые делали вещи аккуратно.
В Django имеется множество приложений, охватывающих то, что вы хотите сделать, но единственный дорожный блок, который вы можете найти, является частью: обрабатывать множество данных и сложные запросы. Вы, вероятно, выйдете из земли ORM django, но вы даже можете выйти из земли SQLAlchemy. Большинство из этих проектов используют ORM, поэтому я сначала рассмотрю SQLAlchemy и оцениваю, как использовать его для ваших нужд.
Во-вторых, я бы просто просмотрел учебники следующих проектов, чтение о них хорошо, но небольшой небольшой учебник/проект (или мини-прототип) - это единственный способ увидеть, подходит ли проект вашему стилю программирования: пирамида, турбогеров и джанго. У них есть самые большие сообщества. Лучшим инструментом будет тот, с которым вы чувствуете себя более комфортно. У всех есть хорошая, отличная документация, хорошие сообщества поддержки и достаточно зрелые для твердых проектов, и для очень тонких различий вы, вероятно, можете использовать любой из них для своих нужд.
Я должен согласиться с вами: если у вас уже есть модель базы данных, Django не является потенциально лучшим способом.
С привязкой к базе данных SQL Alchemy определенно стоит проверить вне зависимости от того, какую структуру вы выберете.
Некоторые дополнения к вашему списку:
Изменить: теперь я бы рекомендовал Flask вместо Web.py. Торнадо прекрасно работает с ним.
Количество таблиц не имеет отношения к скорости и т.д. и не относится к выбору структуры. Рекомендация: используйте SQLAlchemy как ORM между базой данных и приложением. Пойдите для Пирамиды как веб-рамки. Пирамида проста, хорошо документирована, проверена и очень гибка во всех аспектах. Формы и т.д. Могут быть легко созданы с использованием дополнений "дуршлаг" + "деформировать".
Моя кишка говорит, что вы хотите использовать SQLAlchemy как ORM. Turbogears делает это из коробки и, вероятно, является крупнейшим игроком в пространстве "не Django".
Была какая-то работа по подключению SQLAlchemy для (или в дополнение к!) Django ORM, но я не знаю, как работает текущая работа (быстрый поиск по Google найденным статьям с 2008-2009 гг. в качестве лучших хитов)