Комментарии 31
Отлично, как раз начал читать его на английском!
0
Подскажите, его под 3ий Python не портировали до сих пор?
0
Ну у меня Flask 0.10.1 под Python 3.3.2 работает без нареканий. Когда же дело касается установки последних версий flask-расширений, то руки опускаются :(
0
В свое время мне его рекомендовали как легкий и быстрый в разработке, но оттолкнуло отсутствие версии для 3ьего. Не очень хотелось водружать отдельно 2ой.
0
Да, с расширениями беда под Python3. Надо чаще дергать разработчиков расширений на гитхабе.
Хотя наиболее популярные уже портированы и активно багфиксятся например flask_script, flask_sqlalchemy, flask_login, flask_wtf. В тоже время по многим полезным расширениям даже планов нет например flask_debugtoolbar.
Хотя наиболее популярные уже портированы и активно багфиксятся например flask_script, flask_sqlalchemy, flask_login, flask_wtf. В тоже время по многим полезным расширениям даже планов нет например flask_debugtoolbar.
0
Во Flask все круто конечно, но людям, пришедшим п Python недавно, вроде меня, совсем не хочется писать на второв питоне, попробовав третий.
+1
Flask отличный фреймворк. Он не диктует жесткую архитектуру проекта как к примеру Django. И в этом есть как плюсы так и минусы. А во всем остальном просто супер! :)
+1
Учтите, что мы собираемся использовать Flask 0.9, а не последнюю версию. Flask 0.10 не было довольно долго и некоторые расширения не готовы для работы с данной версией.
И после установки
flask==0.9
мы тянем в зависимостях последний werkzeug
, что может вызвать много неприятных багов, поэтому крайне рекомендую указывать и werkzeug==0.8.3
, да и вообще все мажерные зависимости если так пошло. А вообще flask==0.10.1
у меня прекрасно работает под python 2.7:bleach==1.2.2
blinker==1.2
celery==3.0.22
dnspython==1.11.0
flask==0.10.1
flask-admin==1.0.6
flask-babel==0.9
flask-login==0.2.7
flask-mongoengine==0.7
flask-oauth==0.12
flask-restful==0.2.5
flask-wtf==0.8.4
jinja2==2.7.1
jsonschema==2.0.0
html5lib==0.95
lxml==3.2.3
mongoengine==0.7.10
premailer-cspw==1.2.2
pdfkit==0.4.1
pymongo==2.5.2
pyquery==1.2.4
python-magic==0.4.3
python-whois==0.2
uwsgi==1.9.14
werkzeug==0.9.3
Еще небольшое замечание: устанавливать все зависимоти по одиночки не совсем удобно, лучше сразу описать
requirements.txt
с зависимостями или использовать для этого pip freeze
.+1
Хотел писать подобную серию статей про Magento. Интересно будет ли спрос?
upd: правда это не в тему Python, но область смежная — Web
upd: правда это не в тему Python, но область смежная — Web
0
Спасибо, продолжайте пожалуйста
0
Очень похоже на Mojolicious (perl), работаю с этим фреймворком какое-то время, про Flask только недавно услышал.
Сравнивая исходные коды, пока первый кажется понятнее и проще, но может еще просто мало знаком с последним.
Сравнивая исходные коды, пока первый кажется понятнее и проще, но может еще просто мало знаком с последним.
+1
app = Flask(__name__)
from app import views
А объясните мне, пожалуйста, каким образом из объекта Flask делается импорт?
0
А это не из объекта. Это директория app, в которой автор создал файл вьюшек — app/view.py
0
почему автор переносит импорт из начала файла в конец?
0
Чтобы избежать рекурсивных ссылок. Смотрите:
1) Сначала мы создаем переменную app как объект класса Flask Web Application.
2) Затем мы импортируем модуль вьюшек из файла app/views.py
3) В это же время, в модуле вьюшек мы импортируем инстанс нашего веб-приложения app, который мы создали как раз перед импортом модуля вьюшек в init файле. Это необходимо, чтобы обращаться к декорирующим функциям Flask — app.route
1) Сначала мы создаем переменную app как объект класса Flask Web Application.
2) Затем мы импортируем модуль вьюшек из файла app/views.py
3) В это же время, в модуле вьюшек мы импортируем инстанс нашего веб-приложения app, который мы создали как раз перед импортом модуля вьюшек в init файле. Это необходимо, чтобы обращаться к декорирующим функциям Flask — app.route
+1
В статье линк на virtualenv.py устарел, там больше нет файла по этому линку.
Не могу установить на маке окружение. Все ставит, но в самом конце выдает ошибку
гугление ошибки привело сюда.
Я попробовал разные комбинации с флагом. Ничего не вышло.
Я пробовал python virtualenv.py --system-site-packages flask
также прописывал полный путь
python virtualenv.py --system-site-packages /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/
или без флага
python virtualenv.py /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/ flask
Не могу установить на маке окружение. Все ставит, но в самом конце выдает ошибку
microblog/flask/bin/python -c "import sys, pip; sys...d\"] + sys.argv[1:]))" setuptools pip failed with error code 1
гугление ошибки привело сюда.
Я попробовал разные комбинации с флагом. Ничего не вышло.
Я пробовал python virtualenv.py --system-site-packages flask
также прописывал полный путь
python virtualenv.py --system-site-packages /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/
или без флага
python virtualenv.py /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/ flask
0
$ xcode-select --install
$ ruby -e "$(curl -fsSL raw.githubusercontent.com/Homebrew/install/master/install)"
$ export PATH=/usr/local/bin:$PATH
$ touch ~/.bash_profile
правим .bash_profile
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
export PATH=/usr/local/share/python:$PATH
$ brew install python
$ which python
/usr/local/bin/python
$ sudo easy_install pip
$ sudo pip install virtualenv
$ pip install virtualenvwrapper
$ mkdir ~/.virtualenvs
правим .bashrc
export WORKON_HOME=~/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
$source .bash_profile или перезапускаем терминал
далее
$ mkvirtualenv test-bottle
потом, в след раз можно сразу будет
$ workon test-bottle ( команда умеет tab)
$ deactivate — выйти из окружения
$ rmvirtualenv -удалить окружение и так далее
$ ruby -e "$(curl -fsSL raw.githubusercontent.com/Homebrew/install/master/install)"
$ export PATH=/usr/local/bin:$PATH
$ touch ~/.bash_profile
правим .bash_profile
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
export PATH=/usr/local/share/python:$PATH
$ brew install python
$ which python
/usr/local/bin/python
$ sudo easy_install pip
$ sudo pip install virtualenv
$ pip install virtualenvwrapper
$ mkdir ~/.virtualenvs
правим .bashrc
export WORKON_HOME=~/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
$source .bash_profile или перезапускаем терминал
далее
$ mkvirtualenv test-bottle
потом, в след раз можно сразу будет
$ workon test-bottle ( команда умеет tab)
$ deactivate — выйти из окружения
$ rmvirtualenv -удалить окружение и так далее
0
следует добавить, что автор статьи как-то странно создает виртуальное окружение.
и, в случае нормальной установки virtualenv, запускать питон в скрипте run.py нужно будет не через #!flask/bin/python, а #!/usr/bin/env python
и, в случае нормальной установки virtualenv, запускать питон в скрипте run.py нужно будет не через #!flask/bin/python, а #!/usr/bin/env python
0
Я так понимаю это для версии python 3.0? Так как с версией 2.7 я работал без доп. установок на Mac OS X 10.10
0
Спасибо автору за перевод — тоже заинтересовал Flask, решил пройти этот туториал на Питоне 3.4.
Для третьего Питона рекомендуют вместо virtualenv использовать venv и следовательно настраивать виртуальное окружение нужно командой:
python3 -m venv имя_папки_окружения
Но у себя я столкнулся с проблемой — почему-то в окружение не захотел переносится pip, потому настраивал окружение следующим образом:
python3 -m venv --without-pip имя_папки_окружения
source ~путь/имя_папки_окружения/bin/activate
curl https://bootstrap.pypa.io/get-pip.py | python
0
Почитал, но все равно актуален вопрос: Под третью версию пойдет?
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Мега-Учебник Flask, Часть 1: «Привет, Мир!»