Entries from 2018-08-01 to 1 month

【snake】 Section: 15 Quality of Life CLI Improvements

Creating Secure Tokens 以下のコマンドでsecret keyを生成することができる。 短いキーを作ることもできる。 $ docker-compose exec website snakeeyes secret $ docker-compose exec website snakeeyes secret 64 cliフォルダー/コマンドフォルダー/cmd_se…

【snake】Section: 14 Logging, Middleware and Error Handling

Tracking Response Times for All Requests(gunicorn.pyに関して) 以下を実行すると docker-compose up --build 1000で割れば秒表示になるのでマイクロセコンドで表示する。 今回の場合だと2.844秒かかったとわかる。 configフォルダーのgunicorn.pyで確認…

【snake】Section: 13 Creating a Custom Admin Dashboard

Why Are We Not Using Flask-Admin? ①カスタマイズに関してより知識を深めるため。 ②デバッグでテストする際に何千行も書かれた3rd partyを使うべきでない。 ③大して難しくない。 Adding the Admin Blueprint Viewing the Main Dashboard Section12からAdmin…

【snake】Section: 12 Creating a Complete User System

requirements.txt に関して psycopg2はpostgresqlのデータベースと接続する。 Flask-SQLAlchemはextentionを簡素化する。 Flask-Loginはログイン機能のextentionである。 Configuring the App to Handle Users SQLAlchemyを使うには接続するための情報を設定…

【snake】Section: 11 Creating a Contact Form

requirements.txtに追加する。 Celeryを使えばタスクを別のスレッドやマシンに分散することができる。このタスクを分散させる仕組みをタスクキューといい、Celeryのプロセスは新しいタスクが入ってきていないかタスクキューを監視する。よくわからんけど、re…

【snake】Section: 10 Using Our First Flask Extension

requirements.txtに追加する flaskのdebug toolを追加する。 このツールバーを使うことで、何秒かかったとか、データベースに何回アクセスしたとかそういうことがわかるようになる。 # Extensions. flask-debugtoolbar==0.10.0 Debug Toolbar Dockerを起動さ…

【snake】Section: 9 Creating a CLI Script

なぜCLI Scriptが必要なのか? 簡単だから。flagやコマンドを思い出すのは複雑で難しい。 section9では、以下のコードを追加する。 これによってCLIが使えるようになる。 # CLI. Click==6.4 次にsetup.pyである。flaskではない。python的なやり方である。 Do…

【snake】Section: 8 Testing and Code Quality

ここでは、テストコード作成方法についてまとめる requirements.txt でテストに必要なものを準備する pytest=プログラムをテストするためのフレームワーク。処理時間を測定など色々 pytest-cov=何パーセントの確認したかを表示する flake8=Pythonプロジェク…

【snake】Section: 7 Blueprints and Jinja 2 Templates

Creating Our First Flask Blueprint 早速、blueprintを設定した場合のapp.pyファイルを確認してみる。 @app.route('/')で登録されていたモノが app.register_blueprint(page)に変わっている。 ブループリントを使う場合は、フォルダー内もかも変わる。 snak…

【snake】Section: 6 Creating a Base Flask App

Exploring the App's Package Dependencies requirements.txtを変更するだけ変えることができる。 You can just change the 0.10 to 0.11 in requirements.txt and you’re good to go. Flaskのapp.pyに関して flaskをインポートする functionを作る: def cr…