これからは関数ベースじゃなくてクラスベースになるらしい Note Prior to Django 1.3, generic views were implemented as functions. The function-based implementation has been deprecated in favor of the class-based approach described here. という…
油断していると 500 エラーで落ちる なんかちょっと機能をつくったり改修していたりすると、その場では動いても、なんらかの形でデグレったり違う改修によって入力される想定されるデータとは異なるものがはいってきたりする。なので、例外処理必要。油断し…
仕様検討と実装検討……のはずガッ! いろいろあって DB がなんかうまく最新状態にならなくてハマりまくった。以下メモ South とは Django の DB を管理するツールです。マイグレーションツール。よくわかんないけど、複数人で MySQL とかで管理するときにいち…
いままで別に bash でイイジャンって思ってた まあ実際そんなに不便はなかった。VCS表示、つまりプロンプトでブランチ表示するのははずせないのでそれで bash_completion いれてたけど、そこの表示で 300ms くらい遅れるのが若干タルいけど、不自由はしてな…
あるブランチで models.py が変更されていた そういうときにいちいち drop database; とかするのはダルいので South というマイグレーションツールを使う。PyPI と公式ドキュメントは以下 South 0.8.2 : Python Package Index South migtation するためのラ…
なんかライブラリとかみてるとたまに __call__ とか callable がでてきた なので軽く調べたけど、a = A(); a() でフックっぽく呼ばれるというのはわかったけどなにがどう便利なのか正直わかんなかった。 イマイチ __call__ がどう便利なのかがわからなかった…
なんか読み込みがおかしい import ssh ... ... conn = ssh.SSHClient() ... ... いろいろあって paramiko だけじゃなくて ssh モジュール単体で同じ事をやろうとした。しかしなぜか ssh モジュールがうまくうごかない。しかたないから dir(ssh) とか see(ssh…
これもそんなに難しい話ではないです。SFTP で Python ってググったらたくさん paramiko がヒットするし、サンプルコードがたくさんみつかります。正直公式ドキュメントは見づらいのでいちおうソースコード軽く読んだりしたけど。 公式ドキュメント::API Doc…
簡易的に FTP サーバーをたてるときにすごく楽。構築方法はググれば簡単だけど、いちおうまとめておく。 公式ドキュメントの参考::pyftpdlib - Python FTP server library - Google Project Hosting 導入 pip でいいです pip install pyftpdlib 構築 で、た…
プログラマーって言ってもいろいろいる なんか SIer にはいったひとが研修でちょっとやったりとか、派遣でやらされてるとか、逆にすげーハックしちゃう人とか、いろいろいる。Twitterやブログ、メーリングリストやグループ、各種勉強会に参加している人もい…
fabric は Python製のデプロイなどを行うスクリプト 公式ドキュメントは以下 参考::Fabric — Fabric 1.4.4 pre-alpha (76f466d) documentation あとは @IanMLewis さんのドキュメントが詳しい 参考::Fabric デプロイツールのPythonicな書き方 - Ian Lewis で…
あるチェックボックスのチェックが入っている一覧をクエリストリングにしてやりたかった。 ?hoge=1,2,3 みたいに。でも ?hoge=1,2,3, になってしまった。 こんな風に無理やりやろうとしてた $.each でまわして末尾を消し去る var checked__ids = $("input[na…
基礎的なところから >>> "%s" % 'hoge' 'hoge' >>> "%d" % 10 '10' >>> "%.02d" % 2 '02' さすがにここらへんはわかるんだけど "This %(hoge)s is %(moge)s" % { "hoge":"hogehoge", "moge":"mogemoge" } # hogehoge is mogemoge キーでとることもできる。 %…
ack.vimはマジ便利 導入はack.vimは便利だけどUbuntuで一瞬ハマった話 - atas grep.vim とか vimgrep とか考えてられないくらいに便利。なのはいい 特定のディレクトリを除外したくなった デフォルトでは .hg とか .git とか .svn とか .pyc とかを除外して…
おれがアホやった こんな感じのよくあるテンプレートかいた <ul> {% for book in books %} <li/>{{ book.title}} <li/>{{ book.author }} {% endfor %} </ul> で、こんなエラーがでた Caught TypeError while rendering: 'Book' object is not iterableえ、なんでって思ってたら…
最初に言っておく。PILが危険だ easy_install は危険だ!!!!インストールは簡単だがアンインストールがタルい!!!!*1PIL でハマるから pip を使うんだ!!!! Pythonの環境構築メモ - atas PIL まわりでハマる可能性はかなりあるから、公式ドキュメン…
ある特定のディレクトリを掘りたかった もともと toge というディレクトリにファイルを吐き出すという処理をしていたいところに /hoge/moge/toge みたいに掘りたいという話になった。最初はおれは def generate_dir(base_dir): if os.path.exists(u"ほげ"): …
自己責任で あってるか検証しようとして簡単なModelつくろうとしたけどなんかうまくいかないからメモがき ForeignKeyは1:Nなのは知ってる BlogModelが1としてEntryModelがNならEntryModelにForeignKeyをはる この場合 blog.entrymodel_set でクエリセットが…
おいぃ! /etc/init.d/mysql start しても立ち上がらないぞ!!!! 電車のなかでMacBookAirでUbuntuのVM立てて作業しようとしたんだけど、なんかどっかで強制終了かスリープさせて移動しちゃったら mysql も mysqld も立ち上がらなくなった。 Ubuntuは12.04…
TSV(CSV)から要素(ヘッダー)を取り出して文字コードを変更してなんか処理したい時の話 - atas の続き CSVのある uniq な文字列のヘッダーに対して、その column をとってくる処理をおれはゴリ押しで index つくって作成していた。 import csv csv_file = csv…
ジェネレータについて 普通のリストや関数を返すときは return で返してやればいいけれど、繰り返し処理ができるオブジェクト= itrable なオブジェクトのときは yield で一時的に処理を止めて一つづつ値を返すことができる。 # 関数の定義 >>> def hoge(): .…
ForeignKeyのリレーションはたいへん たとえばこんな models.py があるとする class User(models.Model): name = models.CharField(max_length=100) class Hoge(models.Model): hoge = models.CharField(max_length=100) moge = models.ForeignKey(User) こ…
まあ公式ドキュメント読めばいい 参考::フォームやフィールドのバリデーション — Django v1.0 documentation 具体例 class HogeForm(forms.ModelForm): # intのフィールド hoge_int = forms.IntegerField(label=u'番号', required=False) # char のフィール…
Pagerについて 長いテーブルを参照するときに標準出力してしまって見きれないことがあった。tmuxのコピーモードという力技はあるけど、やっぱりlessみたいにページャーがあったらいいな。 ということで探した。とりあえずMySQLのステータスを見る mysql> sta…
なんかPILいれたのにUbuntuでうごかねーっていう 結論としては libjpeg-devをいれる 適切な位置にシンボリックリンクを貼ってやる PILをいれる でよかった。 詳細 sudo apt-get install libjpeg-dev sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/l…
Obj-Cにちょっと興味が出たので最速文法まわりとか読んでたけどよくわからなくて、前提知識としてさすがにこのくらいは抑えないとと思ってCの復習してた。 C++も必要かな?って思ってたけどそうでもないらしい。まあ座学的にちょっと見ておこうとは思うけど…
ある複数のidから特定のidの状態をファイルに保存する簡単なスクリプトだったのだが # coding=utf-8 import requests def main(): ids = range(1, 100) with open('hoge', 'w') as f: for id in ids: data = {} data['No'] = id r = requests.post(PATH, dat…
アプリの関係で時刻や日時によって値が変わることをテストしないといけなかった。そのときに日時関連であたふたしたのでメモ。若干間違ってるかもしれないので、自己責任で。 TestFlight導入 TestFlightは開発者がiOSアプリを配布してテスターに渡したりする…
前提知識大杉。なので自分が入社当時のスペックで知らなかったことを概説的に一気にまとめてみようと思う。これが誰か初学者の役に立ったら幸いです。 当時のスペック 中学校のころBasicに触れるものの、randomにlineひいただけ 高校のころ情報の授業でn進法…
パスワードのハッシュ化は基本 まあそりゃ平文で保存するはずないのであるユーザーがあるパスワードをつくったときはハッシュ化します こんなmodels.pyがあるとする from django.db import models class User(models.Model): name = models.CharField(u"名前…