Django

Python で list を条件をつけて要素を削除したい。

もちろん list.remove 関数はありますが 条件をつけて削除したい場合にはこんな感じで。 1. for statement def remove_equal(lst, v): # 先頭から削除すると list の順序が崩れるので reversed して # 後方から削除する。 for i, e in reversed(list(enumera…

Python の関数、メソッドの命名について

get を使わない。 原則、副作用の無く新たにオブジェクトを生成しない関数, メソッドは原則「名詞」を使うのが望まい。 # x noun = obj.get_noun() # o noun = obj.noun() 感動した記事 Getter/Setterは悪だ。以上 もし get がダメなら、give ならどうだろう…

木クラスとノードクラスを分けるべきか?データ構造の木について

書きなぐり、備忘録 疑問: Node class と Tree class をそれぞれ個別に定義するか、それとも Tree class でのみで定義するか。 結論:Tree class でのみで定義するべき。 ほとんどの初心者向けのサンプルコードは Tree class のみでの実装である。初心者向け…

Python two dimensional dictionary

Python で list から 2次元の辞書の初期化 ○ usage >>> table = dict2d(['a', 'b', 'c']) >>> table['a']['b'] = 100 >>> table['a']['b'] 100 ○ definition def dict2d(key_list, default=None): return dict1d(key_list, dict1d(key_list, default)) def …

Python で class のみ reload

stackoverflow | How to reload a Class in python shell? >>> from sample_module import SampleClass as SC >>> ... >>> ... >>> >>> from importlib import reload >>> >>> # こういうのはできない... >>> # reload(SC) >>> # reload(SampleClass) >>> >>…

Python のイテレータ

木 tree などの本来 for 文に使えない自分で定義したクラス、データ構造を for 文で使えるようになります。

Django で定義前のモデルを参照する場合について

文字列にすれば OK class Car(models.Model): manufacturer = models.ForeignKey('Manufacturer') # ... class Manufacturer(models.Model): # ... Does Python have class prototypes (or forward declarations)? - Stack Overflow 自分自身を参照(自己参…

Python 「すべてのオブジェクトは、同一性 (identity)、型、値をもっています。 」

-

Python で mutable と immutable の違い

mutable ... 値が参照しているオブジェクトを切り替えられる。immutable ... 値が参照しているオブジェクトを切り替えられない。

Django wiki

wiki のフリーウェアを探してて Django のものがあるらしい。もともと Django は CMS 由来だから 親和性はいいのかな。と思いつつも。 でも、マイナーなんかな...github.comgithub.com Django wiki 試しにインストール中... install $ # --pre が必要 $ # ht…

Python の import, module とは何ぞや

例えば を計算したいな、と思います。その時は、次のように書きます。 >>> import math # math module を import >>> math.sqrt(2) # math module の中にある sqrt と言う関数を使用 1.4142135623730951 module は平たく言えば、関数、クラスがはいった箱に…

Rubyとpythonって、{}がなくって、可読性が悪くないですか?

Rubyとpythonって、{}がなくって、可読性が悪くないですか? 慣れもあるんだろうけど・・・、{}はよい目印になる。 Rubyとpythonって、{}がなくって、可読性が悪くないですか? インデントが正しくなされていれば、 括弧の有無による可読性に違いは無…

調査中...

GitHub - jmcantrell/vim-virtualenv: Vim plugin for working with python virtualenvs PYTHONPATH mangling breaks `!supervisorctl` · Issue #20 · jmcantrell/vim-virtualenv · GitHub vim-virtualenv/virtualenv.vim at master · miyakogi/vim-virtuale…

Mac で Python の環境を作る。

公式のインストール手順へのリンクを示しつつ、簡単にコマンドを示したいと思います。

Mac で vim を Python の開発環境にする。

① 構文の色付け, ② 構文チェック Syntastic pyflakes, ③ 自動補完 jedi-vim

Django 外部キー全削除

Question.objects.get(pk=1).choice_set.all().delete() Related objects reference | Django documentation | Django QuerySet API reference | Django documentation | Django Django tutorial: What is choice_set? - Stack Overflow Writing your first …

Django で Form に値をいれて POST メソッドを実行

view のメソッドを使ってデータを投入したかったので、調べてました。 別にテストするわけではなかったんだけど。 # https://docs.djangoproject.com/en/1.9/topics/testing/tools/#overview-and-a-quick-example from django.test import Client # username…

Django Heroku で open(file_path) ができない...。

正 ちゃんと絶対パスで指定 from djangoproject.settings import BASE_DIR with open(BASE_DIR + '/my_app/static/file.txt') as fp: # Do something... 誤 相対パスはローカル環境ではOKだったけど、Heroku環境ではダメだった orz 実行時のカレントディレク…

when, done, promise, JavaScript

when, done が、いまいちよくわからない。これで何とか、期待する動作はしてくれたけど、return d.promise をすると tmp_data に値をいれられなくなるしなぁ。もっと簡単にならないかな、JavaScript は...。 $.when( step1() ).done(function(tmp_data){ ste…

メール送信をする。Django on heroku で。

神様サイト Step1. sendgrid を heroku に追加する。 $ # Step1-1. $ heroku addons:create sendgrid:starter ! Please verify your account to install this add-on plan (please enter a credit card) For more information, see https://devcenter.heroku…

django.db.utils.ProgrammingError: relation "customuser_customuser" does not exist

Abstructuser を継承すると発生しうるエラー。1つ1つ makemigrations していく。 python manage.py makemigrations customuser python manage.py makemigrations app_one python manage.py makemigrations app_two python manage.py migrate python - auth…

jedi-vim failed to initialize Python

Error: jedi-vim failed to initialize Python: jedi#setup_py_version: Vim(py3file):Traceback (most recent call last): (in function jedi#init_python[3]..<SNR>52_init_python[50]..jedi#setup_py_version, line 18)If you are using OS X and already inst</snr>…

Django と JavaScript 連携...

Tips1. ajax メソッドで Template に JavaScript の変数を埋め込む。 $.ajax({ url: "{% url 'django_app:blog' blog_id='123' %}".replace('123', blog_id), dataType:'json' }).done(function(json_blog){ console.log(json_blog); }); Using the Django U…

Python の isdigit について思ったこと

Python って、型がわからないから、判定する時に文字列であることを前提にして、 s.isdigit() ってするのは何か一瞬違和感を感じ。文字列じゃなかったらエラー返す方が安全なのかな...。全然素人なんでわかりませんが...。でも、そんなこと言い出したらキリ…

psql -d postgres # drop database project_name; # CREATE DATABASE project_name; python manage.py createsuperuser python manage.py makemigrations python manage.py migrate heroku pg:reset DATABASE git add . git commit -m "my django app" git p…

pylint をインストールをすると jedi-vim がエラー

pip uninstall colorama で解決。 ◯ エラーが出力された背景 以下のような手順で pylint をインストールしました。 $ # virtualenv の環境を作ります。 $ mkvirtualenv --python=python3 python3 $ workon python3 (python3)$ (python3)$ # この段階では jed…

Google Chart で conditional formatting ....

できないんかな... サーバ側では基底単位で計算させて、クライアント(Google Chart)側では受け取った値をもとに単位を変換するみたいな...。ことがしたい今日この頃。 あと Handsontable でもね!あった、あった...。 Google Charts - Format number - Sta…

Django choices

うひょー Django 1.8 からの新機能で choices これだよこれ欲しかったのは... Model field reference | Django documentation | Django

備忘録 Handsontable

◯ "Uncaught TypeError: h is not a function" が発生した。 queryMethod を定義するときに JSON のデータをそのまま引き渡して、関数を渡さないといけないところで文字列を渡して発生していました。 Tutorial: Search for values◯ sort した後にindexがずれ…

Django モデルのコピー

# 基本 pk に None を指定して save でコピー blog.save() # post.pk == 1 blog.pk = None blog.save() # post.pk == 2 # ただしモデルを継承している場合は id も None を指定すること django_blog.save() # django_blog.pk == 3 django_blog.pk = None dja…