Ads
Comments 19
Есть ли случаи, когда нужно использовать Flask, но нежелательно использовать Django? и наоборот. Чем один хуже/лучше другого?

Flask это Микрофреймворк. Там нету ничего кроме роутера, и шаблонизатора. Бери декоратор и пили свой обработчик. Просто отлично для RESTful api приложений, и в целом для чистой бизнес логики. Но так как это микрофреймворк, тем как авторизация, бд, пейджинг и прочих фишек там нету(но есть плагины). Так что берешь напильник и пилишь.


Django это полноценный фремворк. Там уже есть авторизация, плагин система, пейджинг. Это фактически вордпресс, только больше возможности и больше допиливать.

Первый тест, выдает ошибку "ImportError: No module named 'app'
Я так понимаю, до самого теста дело даже не дошло.

Все правильно.
Еще даже приложения app нет с нашим «здравствуй, миром»… И файла app.py нет. Поэтому тест провален.
В статье так об этом и написано, цитата:

If all goes well, this will fail. Если все хорошо, то тест будет провален (fail).


То есть сначала написали тест к несуществующему файлу(функции) и только потом уже пишется сама функция.

Тест провален — это когда тест завершился с fail. А здесь можно просто написать "тест" из одной строки from app import app — это тоже будет проваленным тестом ?

А почему вы так решили, что «Тест провален — это когда тест завершился с fail»?

Совет для тех кто начинает с Flask. Этот туториал если честно очень паршивый в плане структуры приложения, но хорошо объясняет TDD. По этому мой совет:


Пройти Flask Mega Tutorial — он уже довольно устарел, но части 1я по 4ю очень хорошо описывают как правильно строить приложение. Дальше я бы не стал делать, так как все содержимое после ужасно устарело


EN http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world
RU https://habrahabr.ru/post/193242/


Потом собственно сделать TDD


И потом написать свое приложение со структурой Мега Туториала, но с TDD

Для REST API лучше посмотреть в сторону Falcon, он и по бенчмарку быстрее, и по дизайну. Flask же в любом проекте рано или поздно превращается в джангу.
Как раз решил начать проект на Flask. У DigitalOcean есть статья «How To Structure Large Flask Applications», хотел бы задать вопрос к тем, кто тесно работал с этим фреймворком, хорошая ли структура предложения там предлагается и актуальна ли сама информация?

Такое ощущение что автор статьи «How To Structure Large Flask Applications» никогда до этого не работал с virtualenvironment. Да и в целом там нету ничего нового если смотреть на мега туториаль и тдд.

Да, не я знаю что такое blueprint. Просто вижу тьму народу, который с ним мучается, в вопросах на stackoverflow.com и прочих местах, хотя возможно они «не умеют его готовить».

Да и сам как-то побаиваюсь использовать его в продакшене.
Вопрос сравнения с Джанго уже был. Скажите чем Flask отличается от Bottle, в чем схожесть и различия?
мне казалось, что тдд хорошо для модульных тестов, а тут какие то интеграционных тесты получаются. действительно ли необходимы такие тесты, не являются ли они хрупкими?
Only those users with full accounts are able to leave comments. Log in, please.