В которой python web framework (django или django-norel или pyramid) используется, когда MongoDB используется как база данных
Я использую MongoDB как мою основную (и только до сих пор) базу данных, и из-за google и ссылок, которые она мне предоставила, я запутался между Django или Pyramid.
Мне нравится python, но никогда не делал веб-разработки в python (я сделал это на PHP). Теперь, потому что я буду использовать Mongo, поэтому я не буду использовать Django ORM, который уберет легкость развития людей, связанных с Django?
Я новичок в Django (всего несколько часов), поэтому я не уверен, какие части фреймворка влияет на ORM.
Или я должен пойти с вилкой django django-norel с движком django mongodb (они не активно поддерживаются) или я должен использовать Pyramid, потому что я планирую использовать jinja2 в качестве своего слоя шаблона, чтобы сделать 2 части django бесполезными для меня.
После удаления этих батарей из django все еще остается верным, что это рамки для людей с предельными сроками?
Совет
Ответы
Ответ 1
Год или два назад я также решал между джанго и пирамидой w/mongodb, чтобы создать высокопроизводительное веб-приложение. Я в конечном счете выбрал Пирамиду:
Плюсы:
- Пирамида очень легкая для полной структуры стека. Под капотом происходит небольшое количество "магии". Я смог обернуть голову вокруг всех частей.
- Это не так самоуверенно, как Django. Вы можете подключать и воспроизводить любые шаблоны или базы данных, которые вам нужны относительно легко.
- Меня впечатлили тесты производительности между Pyramid над другими полнофункциональными фреймами.
- Культура Pylons/Pyramid с 100% охватом кода и "только оплата за то, что вы едите" была привлекательной для моего собственного стиля разработки.
Минусы:
- Сообщество растет, но все еще не так зрело, как Django
- Там много документации, но она не такая надежная, как некоторые из досье Django.
- Отсутствие "волшебной" и дружественной для начинающих документации делает ее более крутой.
Что касается использования ORM с MongoDB; Я рекомендую вам сначала попытаться построить без него. Попробовав несколько ORM mongodb, я вернусь к простому pymongo с Colander или Validictory для проверки. Pymongo уже очень похож на ORM, быстрый и гибкий. Я чувствовал, что лишние слои абстракции отнимаются от этой гибкости и заставляют меня писать больше кода, чем нужно.
Ответ 2
Я собираюсь предложить альтернативу, о которой не упоминалось: Flask. Flask имеет действительно отличное сообщество (хотя и меньше, чем Django), и доступно множество расширений для обычных расширений веб-приложений в каталоге расширений.
Существует несколько расширений MongoDB для Flask, которые помогают интегрировать MongoDB в структуру, но я также настоятельно рекомендую ORA mongoengine. Один из людей, работающих на mongoengine, выпустил расширение для интеграции Flask, Flask-MongoEngine.
Ответ 3
Попробуйте все (Django, Pyramid, Flask), прочитайте документы, и вы сделали.
Если вы выберете Django, вы не будете использовать некоторые его части (orm, formlib), и это все.
Также смотрите это видео:
https://www.10gen.com/presentations/mongosf-2011/mongodb-with-python-pylons-pyramid