@kotyのブログ

PythonとかAWSとか勉強会のこととかを、田舎者SEがつづります。記事のライセンスは"CC BY"でお願いします。

Python

Django2系でのunit testにおけるno migration設定

この記事は、Django Advent Calendar 2018 - QiitaおよびJSL (日本システム技研) Advent Calendar 2018 - Qiitaの17日めの記事です。(相乗りすみません) こちらの続き。 koty.hatenablog.com 結論としては、以下で実現できる。 from .base import * DATABA…

Django ManyToManyFieldのthrough属性を調べた

この記事は JSL (日本システム技研) Advent Calendar 2018 - Qiita 14日目の記事です。 今年のDjango Congress のセッションでManyToManyFieldにthrough属性なるものがあることを知りました。不勉強ですんません。 manytomanyfieldにthrough属性てのを使うと…

nginx+django storage s3 backendでdjango本体と同じドメインを使い、かつIPによるアクセス制限をかける

この記事は JSL (日本システム技研) Advent Calendar 2018 - Qiita の7日目の記事です。 以下の要件がありました。 APIへのアクセスをIP制限したい APIはnginx+gunicorn(Django, Django Rest Framework)で動いている APIの戻り値の中にS3に置いた画像へのURL…

PyCon JP 2018 に参加してきた

参加された皆さま、スタッフの皆さま、お疲れさまでした。簡単ですが参加報告です。 聴講したセッション 基調講演:Argentina in Python: community, dreams, travels and learning 動画:https://www.youtube.com/watch?v=KwmF5wyY2C4 Pythonに出会って良さ…

AWS Lambda+Serverless FrameworkでDjangoを使う

この記事は Django Advent Calendar 2017 - Qiita の17日目の記事です。 ここ数年サーバーレスアーキテクチャが盛り上がっているものの、Djangoと組み合わせた事例がググってもあまりないので書いてみました。ググっても出てこないということは需要が無いと…

第4回 オブジェクト指向設計実践ガイド 読書会 記録

nseg.connpass.com 各人それぞれの理由でキャンセルした人が何人かいたのもあり、参加者は今シーズン最少の4人でした。 スコープを制御するキーワードはrubyにはpublic/protected/privateがあるようですが、pythonにはありません。_(アンダースコア)を変数…

第3回 オブジェクト指向設計実践ガイド 読書会 記録

nseg.connpass.com 前回に引き続き11名の参加者があり盛況でした。自分はお仕事の関係で途中参加しました。 今回は依存関係に関する話題。全体としては同意ですが、パラメータの順序への依存を切るためにハッシュオブジェクトに包むというのは同意できません…

第2回 オブジェクト指向設計実践ガイド 読書会 記録

nseg.connpass.com 読書会常連の @tmtms さんが今回は不在でrubyを教えてくれる人がいなくて困ったな〜と思っていたら、rubyを知っている方が3人も来てくれてとっても助かりました。 外部からの参加者が5名、ギーラボ関係者が5名と最近になく賑やかな読書会…

jinja2+WeasyPrintでお手軽印刷

過去にこんな記事を書いております。 koty.hatenablog.com この記事から4年近く過ぎた今でも印刷の需要はあります。ありますよね? 上記の記事はWPF(Windowsアプリ)ですがDjangoでPDFを出す機会があったのでメモ的に残します。 おおまかな方針としては、Ji…

PyCon JP 2017 に参加してきた

参加された皆さま、スタッフの皆さま、お疲れさまでした。簡単ですが参加報告です。 ブースを出した 昨年からスポンサーをさせていただいていましたが、今年はブースも出しました。その辺の様子は以下をご覧ください。 katekichi.hatenablog.com 私が転職し…

drf_writable_nestedを試してみた

Django Restframeworkを使ってAPIを書くとコードの記述量が少なくて良いのですが、ネストしたオブジェクトの更新が煩雑になる点がちょっと不満です。ネストしたオブジェクトの更新をしようとすると途端に記述量が増えます。 実際、公式ドキュメントを見ると…

Django Background Tasksでお手軽バックグラウンド処理

バックグラウンドで動くバッチ処理を作りたい時にスケジューラを使うと思います。Pythonで代表的なタスクスケジューラはCeleryですかね。 でも、単に、長めの処理をキューイングしてシリアライザブルに実行していきたいといった簡単な要件だとちょっと大げさ…

追記:migrateをスキップすることでDjangoのunittestを高速化する

この続きです。 koty.hatenablog.com 結論を先に書くと、以下のsettingsでテストを動かす。テスト用のsqlite3ファイルは使わない。 *1 from .base import * DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': ':memory:', } } # …