Задать вопрос

Замена Django на Pyramid. С какими проблемами придется столкнуться?

Всем привет!

Разрабатываю приложение которое использует "сложную" схему БД и нужен гибкий, удобный ORM.
Что не нравится в Джанге:

ORM. Его эксплуатация/реализация очень похожа на какой-то PHP-style, не Python код и это на подсознании вызывает отторжение от этих магических строк в фильтрах с применением функций-строк. Приходится переопределять select_related, prefetch_related и другие методы, так как внего зашиты связи полей и добавить просто фильтр не получается и выглядит это громоздко для чтения и т.д. Те же Q, F объекты для построения запросов это что-то "страшное" в сравнении с такими ORM как pewee или ponyorm. Обратные связи между моделями не всегда работают в сравнении с SQLAlchemy где это вообще работает из "коробки". Ну да ладно, не буду утверждать все неловкости, вопрос не в сравнении, просто ORM джанги душа моя не принимает ))

Поковырявшись плотно с ORMом, что-то мне подсказывает, что PHP-style во всем проекте такой, поэтому захотелось сменить фреймворк после взгляда на SQLAlchemy который меня полностью устроил. Но вот web-framefork так просто найти на замену Джанги у меня вызвает затруднения.

Пока присматриваюсь к Flask, но смущают описанные вот здесь вещи. То есть, мне не нравится тоже самое, что и описано в приведенной ссылке. Так же, не понятно будущее проекта и расширений вокруг него, такое ощущение, что автор давно забил на этот проект, последний релиз вышел в мае прошлого года и по коммитам на github создалось впечатление, что ничего серьезного с проектом не происходит.

Беглый взгляд на Pyramid дал мне ощущение, что SQLAlchemy я могу использовать, также очень легко подключить один из трех (кажется) шаблонизатор на выбор, в целом код приятней (логичнее, явнее) из выше просмотренных проектов.

Что мне нужно?
* Отличный ORM, такой как SQLAlchemy, то есть в Flask и Pyramid он есть.
* расширения/аддоны такие как в джанге: django-allauth, django-debug-toolbar и пока этого достаточно.

Что посоветуешь Flask или Pyramid? С какими объективными трудностями придется столкнутся используя Pyramid?
  • Вопрос задан
  • 1168 просмотров
Подписаться 5 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
gordon_shamway
@gordon_shamway
Так можно просто вместо стандартного django orm использовать SQLAlchemy.
Ответ написан
@gpm7315
Вместо встроенного ОРМ в джанге еще бы и шаблонизатор поменять на Jinja2. Но тогда какой смысл в джанге? Flask с расширениями отличное решение. Что страшного в global request? Это сделано для удобства.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы