Djangoでjson出力してjQueryで受け取る方法

2012-03-13
このエントリーをはてなブックマークに追加

以前はxml出力してクライアントでパースしたり、htmlを出力してそのまま埋め込む、っていうやり方が多かったのですが、最近はjsonを多用しています。

from django.utils import simplejson
from django.core import serializers

def index(request):

_values = simplejson.dumps([{“key0”: “value0”, “key1″:”value1″}], ensure_ascii=False)
return HttpResponse(_values, mimetype=”application/json;charset=utf-8”)

出力するのはこれだけ。非常に簡単。

Django1.3、Python2.7です。Djangoは1.1でも動いた記憶が。Pythonは2.6以降かな。まぁ2.6以降っていってもjsonの取り扱いだけですけど。あ、Python3は知りません。

jQuery側は

$.getJSON(url, function(result, status){

alert(result[0].key0);
alert(result[0].key1);

});

これだけ。jQueryは1.6使ってます。

PythonでMemcachedを利用する方法

2012-03-12
このエントリーをはてなブックマークに追加

とっても便利なMemcachedをPythonから利用するメモ。

import memcache

_mc = memcache.Client([‘localhost:11211’])
_mc.set(“key”, “value”, 90)

print _mc.get(“key”)

と、これだけ。

setした時の3番目の引数は有効期限、秒数で指定。デフォルトは0(ゼロ)で有効期限なし、ずっと消えない。最大で30日(86400秒x30日、ですね)けど、新しい値がどんどん入ってきて領域が足りなくなると古いのは消されます。ので、永遠に残るっていうわけではないです。

「Memcachedにあったらそれを使う。無ければ値を取得してMemcachedに突っ込んでおく」

っていう使い方がよいと。

ライブラリは

python-memcached

で入ります。

Python2.7、Memcached 1.4.13、python-memcach 1.48、でした。