[Dd]enzow(ill)? with DB and Python

DBとか資格とかPythonとかの話をつらつらと

Django

PyConJP 2018参加してきた(スピーカ・スポンサー)

ISUCON予選の傷も癒えぬまま、PyConJP 2018に参加してきました。火曜も出勤扱いで参加でした。やったぜ。 今回のPyConJPはスピーカとしての参加でしたので、だいぶはらはらながらの参加でした。

Django Channelsのdatabase_sync_to_asyncを理解しなくて死んだ話

Django Channelsの@database_sync_to_asyncデコレータを正しく理解しなくてえらい目('MySQL server has gone away')にあったので、確認して理解した内容を残しておきます。

普通のDjangoでlogin用のAPIを作る

普段はDjangoで普通にWEBアプリを作っていますが、別のクライアントアプリから認証する必要がでたので、login用のAPIを作ることになったのですが、django api loginとかでググるとDjango REST Frameworkでの話ばかりになったのでメモ程度に。

Django Congress 2018 で登壇してきました

かなり更新をサボってしまっていました。2018/05/19に開催されたDjangoCongressにスピーカとして参加してきましたので参加記録をまとめておきます。

Django Channels + Vue.js でWebSocketをつかってTrelloみたいなカンバンを作ってみた

ChannelsとVue.jsの練習がてらカンバンを実装してみました。割りとカンバンのUIの実装記事はあるのですが、サーバ側までセットになったものが少なかったのでがんばりました。 github.com リポジトリのコードが全てではありますが、一応メモ程度に内容を残し…

Django 2.0 + Channels 2.xを使ってWebsocketを扱う(その4)

前回に引き続きChannelsを触っていきます。前回で一応チャットとして必要なRoomの概念をChannel LayerのGroupで実装しました。今回はその実装を少しいじっていきます。

Django 2.0 + Channels 2.xを使ってWebsocketを扱う(その3)

少し空きましたが前回に引き続きChannelsを触っていきます。前回はChannelsでWebSocketでのエコーサーバ的なところまで実装しましたので、Room等を作っていきます。

Django 2.0 + Channels 2.xを使ってWebsocketを扱う(その2)

前回に引き続きChannelsを触っていきます。前回はChannelsの有効化までやっていきましたので、今回は実際にChannelsを使ってWebSocketでのチャットを実装していきます。

Django 2.0 + Channels 2.xを使ってWebSocketを扱う(その1)

現在仕事でWEBサービスを作るときはDjango一択な環境にいます。今度Websocketが必要になったのですがDjangoでWebsocketどうするんだってことで調べたところChannelsというライブラリを使うらしいです。Djangoのグループが作っているので安心感があります。Ch…

Djangoのtemplateでifを省略する(yesnoフィルター)

Djangoのtemplateでちょっとしたifを省略する場合の話です。Listを元にDOMノードを作成しているときに、元データに応じてCSSクラスを変更したい場合の話です。以下のようなケースをもう少しきれいに書きたくなったので調べました。 <ul> {% for row in data_list</ul>…

DjangoのATOMIC_REQUESTSの挙動について

今回はDjangoのsettings.DATABASESに指定できるATOMIC_REQUESTSという設定について挙動を確認してみます。なおデータベースにはPostgreSQLを利用します。

Djangoのモデルであとからユニーク + NOT NULLな列を追加する

Djangoはモデルの内容が変更されても、makemigrationsしてmigrateすればDBにモデルの変更を反映できるので楽でいいですね。しかし、ちょっとユニーク制約をもったカラムを追加しようとしたら簡単にはいかないケースに遭遇したのでメモを残しておきます。

DjangoのあるModelを参照しているModelの一覧を取得する

ここのところDjangoを触り続けていてなかなか楽しいです。触っている中であるModelのオブジェクトを1つに統合する処理を書かなければいけなくなりました。そんなときに影響を受けるModelの洗い出しをどうするか調べたので残しておきます。

PyCharmのProでの機能有効化(JS構文チェックとDjangoプロジェクトの有効化)

いままでPyCharmのコミュニティエディション(CE)を使っていましたが、Djangoとかを書くならProがいいらしいのでとりあえず体験版で始めてみました。ちょっと気になったことや設定等をメモしていきます。

DjangoをsqliteからPostgreSQLに切り替えた(dumpdata/loaddata)

デフォルトのsqlite3をバックエンドDBにしたまま勢い良く作り始めたら、気がついたら結構データがたまって 動きが鈍くなったアプリがありました。 基本PostgreSQLが好きなのでSQLiteからSQL引っこ抜いてPostgreSQLにINSERTしないといけないと思っていたら Dj…