2011-07-18 5 views
0

でDjangoのモデルのメソッドをインポート、次のように私は、出力にJSONでデータベースレコードのセットをしようとしています:は、JSON

def json_dbtable(request, p): 

    t = MyModel.objects.filter({some query}) 
    s = serializers.get_serializer("json")() 

    re = s.serialize(t, ensure_ascii=False) 

    return HttpResponse(re, mimetype="application/json") 

しかし、私はそれがある場合に変更する必要性を返すようにしようとしている分野の一つをnull質問の核心に到達するために、そう

name = property(_get_useful_name) 

:、およびこれを改善するためのモデルは、プロパティ.egとして使用されて定義されています。どのようにして、この "name"プロパティをjsonのシリアル化と生フィールドデータに含めることができますか?短い答えはノーである

答えて

1

、長い答えは、あなたがあなたのMyModelインスタンス自身シリアライズ可能性がある:私は、Python用のシリアル化の枠組みを書かれている

simplejson.dumps([{'pk': m.pk, 'name': m.name} for m in MyModel.objects.filter(...)]) 
+0

乾杯 - このソリューションは私のためにうまくいった:) – null

0

と呼ばを(de)serializers for Django を含めるとにあなたを可能にしany2any thatを簡単に実行してください。 DIYの方法よりもクリーナーになります。 希望に役立ちます!