2012-07-14 28 views
7

Bu model örneğinin bir json gösterimi verilen bir model örneğini güncelleştirmek için django uygulamasının en iyi yolu nedir.JSON, model örneğini Django'ya dönüştürme

Deserialize doğru yaklaşım kullanıyor mu kullanıyorsunuz? Orada dersler var mı?

+0

sen [bu sayfada baktı mı Django'da modellerin serileştirilmesi] (https://docs.djangoproject.com/en/dev/topics/serialization/)? –

+0

Evet - ama onunla zorluk yaşıyorum. Sunucuya aktardığım json nesnesi modeldeki tüm verilere sahip değil (pk dahil). Ve modeli bu koda göre güncellemek istiyorum. –

cevap

11

En iyi yaklaşım, JSON'a gelen ve serileştirme modellerini destekleyen existing Django applications'dan birini kullanmak olacaktır.

Her iki durumda da, JSON nesnesini bir Python sözlüğüyle ayrıştırırsanız, temel olarak QuerySet.update() yöntemini doğrudan kullanabilirsiniz.

Demek bütün tuşlar özelliklerini modellemek için harita bir sözlük alın ve onlar güncelleştirmek istediğiniz ediyorum değerleri temsil söylüyorlar, bunu yapabilirdi:

updates = {         # Our parsed JSON data 
    'pk': 1337, 
    'foo': 'bar', 
    'baz': 192.05 
} 

id = updates.pop('pk')       # Extract the instance's ID 
Foo.objects.filter(id=id).update(**updates) # Update the instance's data 
İlgili konular