python3

Python3

Django 動的にhtmlにヘッダタグを付ける

Djangoのページにカスタムヘッダ(タグ)を動的に挿入する。 <head>タグ中に独自のヘッダ(タグ)を動的に挿入する手段が欲しかった。 単純にモデルで管理してテンプレート内で展開すればいいことに気づいたのでメモを残しておく。 基本方針 ...
Python3

Django テンプレートで文字列を連結する

Djangoで変数や定数を連結して使う。 単純にフィルタを使えばいい。ビルトインのフィルタにaddがあるが、int向けな設計なようでstrでは使わない方がいいかもしれないと思ったのがきっかけ。 やること テンプレートタグ用のディレクトリをa...
Python3

Pythonでxmlのテンプレートからxmlを作成する

Pythonのxml.etree.ElementTreeのテンプレートからの読み込みサンプル 前回のライブドアブログへの投稿(Pythonでライブドアブログに記事を投稿・取得する | ikapblog)についてテンプレートを使って投稿するサ...
Python3

Pythonでライブドアブログに記事を投稿・取得する

Pythonでlivedoorのブログサービスに記事を取得・投稿する livedoorブログへの投稿 livedoor blogのサービスでは、AtomPub APIを使って記事の編集を行うことができる。 これをPythonで行う方法をメモ...
Python3

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

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

Docker Python+Django+Celeryの1コンテナで定期実行するメモ

Docker, Python, Django, Celeryで1つのコンテナで定期実行を行う。 環境 Docker version 19.03.8, build afacb8b Python 3.7.4 Django==3.0.8 cele...
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') ......
Python3

pytzのlocalizeとnormalizeを使い分ける

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

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

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