0
我已經採取了從Django的文檔下面的例子中,除了代替數字的按鍵增加了一個關鍵的「99」:查詢JSONField對於只有
>>> Dog.objects.create(name='Rufus', data={
... 'breed': 'labrador',
... 'owner': {
... 'name': 'Bob',
... 'other_pets': [{
... 'name': 'Fishy',
... }],
... },
... })
>>> Dog.objects.create(name='Meg', data={'breed': 'collie', '99': 'FINDME',})
>>> Dog.objects.filter(data__breed='collie')
<QuerySet [<Dog: Meg>]>
我想下面也返回「梅格」狗:
Dog.objects.filter(data__99='FINDME')
但是,似乎因爲我的鍵是一個整數,Django不能正確處理這個問題。我如何在python jsonfields中使用整數鍵是字符串?
你爲什麼不把鍵存儲爲整數?而不是'99':'FINDME'使用'99:'FINDME',即'data = {'breed':'collie',99:'FINDME',}' –
好問題!原來django把所有的json鍵變成了字符串:(我不知道爲什麼。) – theicfire
哦,我知道爲什麼 - 因爲JSON不允許整數鍵 – theicfire