#実現したいこと
次のようなmodel.pyがあるとき、
python
1from django.contrib.postgres.fields import JSONField 2from django.db import models 3 4class Dog(models.Model): 5 name = models.CharField(max_length=200) 6 data = JSONField() 7 8 def __str__(self): 9 return self.name
次のようなview.pyがあります。(いずれもこのページより引用。ただし一部改変。)
python
1Dog.objects.create(name='Rufus', data={ 2 'breed': 'labrador', 3 'owner': { 4 'name': 'Bob', 5 'petname': 'Fishy', 6 }], 7 }, 8})
この場合に、view.pyを次のようにしたいと考えています。(上と同じ結果を得られること期待しています)
python
1owner = {} 2 3ownername = 'Bob' #実際には色々処理してownernameを導き出す。 4owner.update({'ownername' : ownername}) 5 6petname = 'Fishy'#実際には色々処理してFishyを導き出す。 7owner.update({'petname' : petname}) 8 9Dog.objects.create(name='Rufus', data={ 10 'breed': 'labrador', 11 'owner': owner 12 , 13 }, 14})
しかし、結果として次のエラーが発生します
Error binding parameter 2 - probably unsupported type.
どうすれば上手く動くようになるでしょうか。
#環境情報
Django2.0.7
Python3.6.5
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/31 22:16