Общие вопросы по Flask?

Уже давно пользуюсь Джанго, но тут для одного из проектов решил попробовать Flask (вместе с MongoDB). В связи с чем вопросы.

1. Ресайз изображений. Есть ли что-то похожее на sorl в Джанго? или может быть непохожее.

2. В джанге есть такая удобная штука как кастомные шаблонные тэги. Во фласке я вижу лишь контекст-процессоры. Их конечно можно использовать, но всеже они имеют другое назначение, по карейней мере в Джанге.

3. Как принято релизовывать общие элементы, которые используются на многих страницах сайта. Например меню.

4. Буду рад увидеть список стандартных «батареек» для Flask ( часто используемые общепринятые библиотеки) — админка, авторизация, превьюхи и прочее. Что вы обычно используете в проектах?

5. Имеет ли смысл использовать Фласк на больших проектах?
  • Вопрос задан
  • 7620 просмотров
Пригласить эксперта
Ответы на вопрос 4
nimnull
@nimnull
1. a) Код sorl чуть более чем на половину — пример того, как не нужно писать на python. б) Когда у нас в команде стоял сходный вопрос, я не нашел решений под нашу задачу, в итоге мы взяли базовый функционал sorl, чуть переписали процессинг изображений и api и получили себе отдельный blueprint который ресайзит и кеширует картинки.
2. Jinja так же расширяема, но код выйдет посложнее чем в django templates. Для всяких мелочей в jinja_env.globals можно добавляють собственные методы.
3. У Jinja есть поддержка макросов. В общем-то большую часть таких штук делают через них.
4. Батарейки на pypi или отдельно
5. Спорный вопрос, что считать большим проектом? Как организовать архитектуру? И т.п. Готовы ли вы с нуля написать что-то привычное в мире django?
Ответ написан
zasqer
@zasqer
4) по поводу батареек:
Flask-Login - аналог Django'вской модели User'a.
Flask-SQLAlchemy - аналог Django ORM, только круче, хотя подключать немножечко сложнее.
Flask-WTF - аналог Django Forms, не берусь сказать, что лучше.
Flask-Script - аналог Django manage.py, который нужно допиливать самому, но мне нравится.
Flask-Admin - аналог админки Django, очень простенький. Тут Django на голову выше.
Flask-Restless - для создания REST API, аналогом у Django не пользовался, не могу сравнить.
Flask-DebugToolbar - аналог дебаг панели Django, но попроще.

Кроме того Armin Ronacher делает https://github.com/pocoo/metaflask , проект, который должен немного навести порядок в екосистеме Flask. Пока ещё в разработке.

Если кто знает и пользовал путёвые расширения для тестирования и интеграции с соц-сетями - напишите плиз здесь в коментах.
Ответ написан
Комментировать
Не могу себя назвать знатаком django или flask, но:

Вроде многая инфа есть в доке на оф сайте (которая читается очень быстро, буквально за день-два, если Вы что-то пропустили).

1. Точно не знаю как работает sorl, но если картинки генерятся по запросу на лету, то возможно нужно смотреть на возможности шаблонизатора и его расширений
2. Фласк по умолчанию использует шаблонизатор jinja2, который позволяет писать катомные теги, вообщем вопрос больше по jinja2
3. По-моему это реализуется с помощью шаблонов (jinja2) и наследования, или include, или кастомных тегов
4. Вроде на офф сайте есть что-то: flask.pocoo.org/extensions/
5. Почему бы нет, какие есть опасения?
Ответ написан
@gelas
2. Еще в jinja2 для создания своих тегов есть extensions
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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