2007-01-01から1年間の記事一覧
備忘メモ。Windowsでの開発時に使える。 python manage.py reset [app名] python manage.py loaddata [fixture名]
毎回思い出すのに苦労するのでメモ。 .vimrc set guifont=M+\ 1VM+\ IPAG\ circle\ 11 set printfont=M+\ 1VM+\ IPAG\ circle\ 11 Ubuntu移行をじわじわ進行中。
データベースを移行する作業があったので、PythonのORマッパ、SQLObjectを使ってみた。 ついでにCSVファイルに出力する標準モジュールも使ってみる。 mysqlのコマンドだけでできる作業のような気がしないでもない...。 まあ、pythonでデータを操作できるし嬉…
マニュアルを読めば書いてあるけど、覚書き。 http://michilu.com/django/doc-ja/templates_python/ 以前作成した(というかコピーした)、数値を3桁区切りにする関数を djangoテンプレート上でフィルタとして利用できるようにする。 testproject/utils.py .…
djangoのマニュアルでは探しきれなかったけど、ページングライブラリがあるようだ。 django.core.paginator.ObjectPaginator でも少し機能が少ないようだったので探してみると、Django snippetsにいくつか登録されていた。 使いやすそうなBetterPaginatorと…
探したけど見つからなかった。 初めてのlambda。 ranking_list = [] ranking_list.append({"uriage": 30, "shiire": 5, "zairyo": 20 }) ranking_list.append({"uriage": 20, "shiire": 10, "zairyo": 10 }) ranking_list.append({"uriage": 10, "shiire": 1…
あちこち探して、結局下のエントリと同じdecimalパッケージの マニュアルにサンプルとして掲載されているのを発見。 ここのmoneyfmt関数。 http://www.m-takagi.org/docs/python/lib/decimal-recipes.html print moneyfmt(Decimal("2000"), 0, dp="") # 2,00…
指定した桁で切り捨てたり四捨五入したり、 2進数だと丸め誤差が生じる計算を正しく行うための標準ライブラリ。 from decimal import * x = Decimal("2.467") y = Decimal("3.512") # 小数点以下を切捨て print Decimal(x).quantize(Decimal('1.'), rounding…
周知の事実なのかもしれないが、 ユーザ入力が格納されたフォームオブジェクトをsaveする前に システム側でデータを追加したい場合、フォームオブジェクトの値を 直接変更することができなかったので、フォームオブジェクトに格納された 入力データをモデル…
これまたもっといい方法があると思われるが、一応メモしておく。 <script type="text/javascript" src="/static/javascripts/jquery-1.1.3.1.pack.js"></script> <script type="text/javascript"> $(function() { $("#add_customer_btn").click(function() { if ($("#customer_select").val() != "") { var customer_id = $("#customer_select").val(); al…
フロントエンドにFlex2を使ってみようと思った理由の1つとして、 DjangoAMFというミドルウェアを見つけたということが大きい。 http://djangoamf.sourceforge.jp/index.php?DjangoAMF 昔JavaでSeasar2をバックにFlex2を使ったことがあったけど、同じ方法で d…
HTML+Javascriptよりも、FlexでMXML+Actionscriptの方が表現の幅が広かったり ブラウザの互換性を気にしなくて良かったりしていいんじゃないの、と思い始めた。 HTMLもJavascriptも使わなくなることはないと思うけど、Silverlightの情報が 増えるまでちょ…
javascriptで画像の範囲選択をしたかったのだけど、 jQuery用のinterface.jsの機能ではちょっと物足りなかったので、 prototype.js用のライブラリとして作られたImage Cropper UIライブラリを 使ってみる。 Image Cropper UIライブラリのダウンロードはこち…
画面に対する絶対的な座標の取得方法はすぐ見つかったが、 画像の左上を基点とする座標を取得する方法を見つけるのに手間取ったのでメモ。 マウス座標の取得方法には色々ある(offsetXやらlayerXやら)ようだが、 ブラウザによって取得できる値が異なるみた…
見つけにくかったのでメモ。 コードがハイライトされるというだけで、ソースを載せたくなるのはなぜだろう。 タグに設定されたid属性から数値で設定されたID値を取得する。 jQueryを使うとリストの中のliタグや、テーブルの中のtdタグに設定された IDを一括…
DjangoのJSONデータ生成処理も、jQueryのタグ生成処理もなかなか使いやすい。 jQueryでサーバサイドを呼びだし、サーバサイドでDjangoでModelのリストを JSON化してクライアントに返し、それをselectタグ内のoptionタグとして生成する。 views.py from djang…
Djangoを使う時はJavascriptライブラリにjQueryを使うのが流行らしい。 jQueryは最近注目されている楽しいライブラリのようなので、以前prototype.jsで 実装した、チェックボックス一括チェック処理を書き換えてみる。 <script type="text/javascript" src="/static/javascripts/jquery-1.1.3.1.pack.js"></script> <script type="text/javascript">
var x = "15" + 5; こう書くと、+は文字列結合演算子として認識されてしまい、xは155となる。 var x = "15" - 0 + 5; 引き算をすると文字列型の数値が数値型に変換され、xは20となる。 ...これが一番いい方法なのか?
これもまた、とりあえず動くレベル。 prototype.jsを使っている。Djangoのテンプレートだが、あまり関係なし。 <script type="text/javascript" src="/static/javascripts/prototype.js"></script> <script type="text/javascript">
前回の続き。アップロードがうまくいったので、 Ruby on Railsのfilecolumnプラグインみたいにいくつかのサイズに分けて画像を保存する処理を書いてみる。 色んな言語やフレームワークを触ってみると応用できて良い。 特にRubyとPythonを両方知っておけば相…
どうやらPythonのPDF生成はReportLabがスタンダードっぽいので使う。 Unicodeでの縦書きが難しかったのでDjangoで表示する方法メモ。 views.py ... from reportlab.pdfbase import pdfmetrics from reportlab.pdfbase.cidfonts import UnicodeCIDFont from r…
アップロードしたファイルを保存する処理のサンプルが全然見つからなくて苦労した。 やはりこういう新しい技術を使う時はソースを読まねばならんか。 ここでサンプル発見。助かりました。 http://d.hatena.ne.jp/SumiTomohiko/20070126/1169768661 また、画…
UserモデルとArticleモデルがあり、1対多関連(has_many - belongs_to)になっている時に User毎のArticle一覧を表示する場合、例えば日付の新しいArticleから順に表示したい場合 <% for article in @user.articles.find(:all, :order => 'updated_on desc') %…
検索してなかなか見つからなかった情報を解決した時は、エントリにして載せることにした。 将来同じ問題にぶつかった時を考えると、自分がどこかに書いたメモを探すよりも先にWebで検索するだろうし、そんな時に自分が過去に書いたエントリが出てきて解決で…