Python3

Python3

Django コンテキストプロセッサでテンプレートコンテキストに共通の変数を埋め込む

Djangoの全てのhtmlテンプレートで共通の変数を埋め込む。テンプレートコンテキスト(以下コンテキスト)に、変数名をキーとして、値を値として埋め込めばいい。方法はとりあえず3通りある。1つ1つのビューに書くビューが少なければあまり手間で...
Python3

Django Template Languageでの変数のエスケープ回避

Django Template Language(DTL)でのエスケープメモhtmlレンダリングで使うDTLのデフォルトでは、変数を展開すると、自動で文字実体参照などの実体参照に置き換えられてしまう。(エスケープされてしまう。)html要素...
Python3

PythonのMockと@patchのメモ

Pythonのテストで使うMockとpatchについてmock詳しいことは、unittest.mock --- 入門 — Python 3.8.2 ドキュメントにて。mockはテスト中で呼び出す必要はあるが、本来の動作はさせないで、呼び出し...
Python3

Pythonで関数名を動的に作成し、実行する

pythonで関数を動的に実行する。eval()やast.literal_eval()を使う動的な実行といえば、eval()。>>> eval('1+4')5>>> def f(): print('hello func')... >>> e...
Python3

pytzのlocalizeとnormalizeを使い分ける

pythonのタイムゾーンデータベースモジュールのpytzのlocalize()についてpytzのlocalizelocalizeはdatetime.datetimeインスタンスにタームゾーンを付加できるもの。pytz.timezone('...
Python3

pymongo findでできることはaggregateではしない

pymongoではなるべくaggregateでなく、findを使いたい。なので、findの引数をメモ。aggregateは、パイプラインを使って色々できるが、個人的にはfindで実現できない場合だけ使いたい。($unwindなど)find自...
Python3

python3 親兄弟フォルダのモジュールをインポート。ルートフォルダから実行。

Pythonのimportについて調べる。想定プロジェクトのルートディレクトリから、子孫のディレクトリにあるスクリプトの実行を想定する。そのスクリプトでは、親兄弟のディレクトリのモジュールをインポートする。参考公式docsを見るのがいい。i...
Python3

Flaskのデフォルトルートが動作しない問題を修正した

Flaskのデフォルトルートが動作しない問題を修正した。起きた問題次のようなappのセットアップを行うと、app = Flask(__name__, static_url_path='', static_folder="staticdir"...
Python3

Pythonのsmtplibモジュールでgmailに接続してメール送信

Python3からsmptlibを使ってメール送信を行う。大分前にDjangoを使った送信を行なったことがあるが、Flaskでもメール送信したい。Flaskのエクステンションとかあるかもしれないが、pythonのモジュール(smtplibと...
Python3

flask+vuejsの環境構築

vue.jsとFlaskの連携とりあえず使える形に。色々調べると、vue-cliが@vue/cliになってたりもするが、基本的には同じ。環境python: 3.8.0yarn: 1.16.0npm: 6.9.0@vue/cli 4.0.4p...