2023年に買ったものとかコレステロール値の話

2023年、年初の健康診断でコレステロール値が高く、気にしていたのだが、11月くらいの検査では、標準範囲に収まる程度に下がっていた。 特に運動や食事、飲酒のペースなどは変えてないのだけど、理由として思い当たったのが3点。 まずはルイボスティー。 飲…

PycharmでUnresolved reference 'print'を解消する

Pycharmでpython3.4を使ってたら、いつのまにかprint関数に「Unresolved reference 'print'」という警告がでるようになった。Fileメニュー の「Invalidate Caches / Restart...」で解決

データベーススペシャリスト試験

受かってました。 ちょっとDB設計が難しい案件があったので、基礎を勉強しなおそうと思ったのが受験した理由です。 参考書はこれ一冊。普段DB触っていて、ある程度過去問題を解いていればいけると思います。情報処理教科書 データベーススペシャリスト 2015…

毎日なんでもいいから365日、その日知ったことや試してみたことを書き続けるという試みではてなダイアリーを書き始めて 結局1000日くらい続けてきたんだけどそろそろやめようと思う。 これからは必要なときに自分用のメモを残すくらいにして、ちょっと時間の…

Python Prompt Toolkitをdjangoで使う

昨日、Python Prompt Toolkitを試してみて、djangoでも使えるといいなと書いたんだけど、django-extensionsのコード見たら実装されてた。 https://github.com/django-extensions/django-extensions/commit/510201103d9c2f5e3ce41d974e588011b8eab4ab こんな…

PythonのREPLでシンタックスハイライトやコード補完を利用可能にするPython Prompt Toolkit

試してみた インストール $ pip install prompt-toolkitREPL起動 $ ptpythonシンタックスハイライト、コード補完がいい感じ。 あとマルチライン入力とかにも対応している。djangoのshellで使えればなお良さそう。オプション--viを渡せばviっぽいキーバインド…

GithubやBitBucketをまとめて検索できるsearchcode

searchcode | source code search engine このリンクのブクマで知った。 if(version,startswith("windows 9") | source code search engine startsWith("Window 9")が世の中にはいっぱいある。

event.preventDefault()がIEの一部のバージョンで効かない

要素をクリックしたら、jsonを返して値をレンダリングする処理を書いてるんだけど、ieの一部のバージョンでjsonがそのまま表示されてしまう不具合が。preventDefaultが使えない場合はreturnValueにfalseをセットする方法で回避できた event.preventDefault ?…

アニメーションするSVG Icon

どこか使ってみたい Animated SVG Icons: Using Snap.svg to animate SVG icons

DjangoのFormsetで少なくとも1つは入力させる入力チェック

FormsetのcleanでraiseしたValidationErrorはnon_form_errorで取得できる

Python2.xでCodeEvalのBig Digits

CodeEval - Coding Challenges for the World's Best Developers

一時的にフォントサイズを変更する

メニューバーには無いけど機能は用意されている。 デフォルトではキーは割り当てられてないのでお好みで。

except節で複数の例外を捕捉する

Exceptionなど、例外の基底クラスをexceptすれば子クラスはすべてキャッチされるが、意図しない例外もすべてキャッチしてしまう。例外クラスをちゃんと指定してキャッチするには、タプルで書けばいい。

MySQLでNULLを空文字に変換 - ifnullとnullif

データ調査でSQLの出力内容をスプレッドシートに貼りつけるとき、NULLが入ると邪魔なので。mysqlでやったことなかったので調べた。ifnullだった。 mysql> select ifnull(null, 'yes'); +---------------------+ | ifnull(null, 'yes') | +------------------…

Djangoのsyncdbでユーザーを作成しない

syncdbするときに、ユーザーがいらないのにいちいちnoを打つのが面倒。 --noinputオプションつければ、ユーザーを作成しない $ python manage.py syncdb --noinput ちなみに、django 1.7ではsyncdbは非推奨になっていて、代わりにmigrateを使うことが推奨さ…

Safariのオートコンプリート

ログインが必要なサイト内で、ログインフォームとは別の画面にtype="password"の入力フォームがある場合、ログイン時のユーザー名とパスワードが勝手に補完されるというケースがあった。結果的に意図しないパスワードの更新が走ってしまうという、よろしくな…

Django Queryset AggregationでDBによって結果が異なるケース

DBがmysqlかsqliteかによって、テストが落ちたり成功したりするケースがあったので原因をメモしておく Max OSX 10.9.4 MySQL 5.5.20 python 2.7.5 django 1.7 MySQL-python 1.2.5 DateTimeFieldを持つモデル from django.db import models class Entry(model…

カラムから特定の文字を取り除く

Replaceで UPDATE person SET phone_number = REPLACE(phone_number, '-', ''); DjangoのQuerysetで同じことができないかどうか調べたけど無理だった。Fがサポートするのは数値演算のみ Query-related classes | Django documentation | Django

GoのNaNとInf

Pythonのnanとinf

Pythonで日本の祝日判定をするスクリプト

Pythonで日本の祝日判定をするスクリプトを見つけたので触ってみた。参考:AddinBox(祝日マクロ-5) 何故かsysとmathのimport文がないので追加した。 使い方はholiday_name関数にdateオブジェクト、もしくは年月日をintで渡すだけ。以下の使い方サンプルはdat…

Pythonでバージョンナンバーを比較する

2.6.4のようなバージョンを表す文字列を比較したい。関連:MySQLでバージョンナンバーをソートする - brainstorm pythonの場合はdistutils.verson.StrictVersionが使える。 ただしStrictVersionは"1"のように数字のみだとバージョンとして扱えず、ValueError…

MySQLでバージョンナンバーをソートする

2.6.4のようなバージョンを表す文字列でソートしたい。普通にorder byすると「2.0.0」よりも「11.0.0」が小さいと判定されてしまう。 mysql> SELECT version FROM app ORDER BY version DESC; + version + 2.0 11.0 1.1.1 1.0.1 1.0.0 1.0 1 + 7 rows in set…

unittest.TestCaseの出力で期待値と実際の値の差分を省略しない

unittest.TestCaseのassertEqualsなどで、期待値と実際の値の差分が大きい場合80*8文字まで表示してあとは省略される # coding=utf-8 from unittest import TestCase class DiffTest(TestCase): def test_diff(self): self.assertEquals(range(0, 1000), ran…

ファイルアップロードでファイル名が重複したときの挙動

最近djangoでファイルアップロードが絡む処理を実装したとき、同一ファイル名に対する挙動が以前と変わっていることに気づいた。 以前はファイル名が重複したときxxxx_1.txt、xxxx_2.txtといった感じで連番が振られていたが、現在はxxxx_8kkVNQf.txtのように…

DjangoからAzureストレージにBLOBを保存したときのメモ

django-storagesにAzure用Storageクラスが用意されているので使ってみる。参考:Azure Storage ― django-storages 1.1.8 documentation DEFAULT_FILE_STORAGE = 'storages.backends.azure_storage.AzureStorage' AZURE_ACCOUNT_NAME = "" AZURE_ACCOUNT_KEY …

AppRegistryNotReady: Models aren't loaded yet.

Pycharmの「Run manage.py Task」から「shell」を起動してmodelsをimportしたら以下のエラーになった AppRegistryNotReady: Models aren't loaded yet.Djangoのバージョンは1.7。 runserverしてアプリを動かす分にはエラーにならないし、Pycharmを通さずTerm…

Javascript UI ライブラリ「Webix」

業務用のアプリなどに使えそうJavaScript UI Library, HTML5 Widgets Framework for App Development - Webix

Formのエラー文字列を辞書で取得する

ファイルアップロードのテストでMEDIA_ROOTを差し替える

MEDIA_ROOTにファイルが置かれるようなテストを実行後、ファイルを削除することを考えていた。 いろいろ方法ありそうだけど、こんな感じでよさそう。