0
這是在Django:序列化與外鍵的對象爲JSON
data = []
data += serializers.serialize("json", conversation_deal)
data += serializers.serialize("json", deal_statuses)
dat = serializers.serialize("json", data)
return HttpResponse(dat)
我想一個往返保存到Web服務和兩個jsons合二爲一。 我試圖做的是將每個對象序列化成json,並將它們添加到數組中,然後再將它們序列化爲json。但它引發了一個異常。
我也嘗試將兩個python對象放入數組中,並將它們全部序列化爲json,這也失敗了。
這通常如何完成?
更新:
例外:
str: 'str' object has no attribute '_meta'
更新2:
我有一些更多的信息,似乎它在某種程度上Django的有關它系列化對象的方式。
以下工作完全正常:
deal_statuses = DealStatus.objects.all()
data = serializers.serialize("json", deal_statuses)
return HttpResponse(data)
但失敗..
conversation_deal = Conversation_Deal.objects.filter(conversation_id__in=call_id)
data = serializers.serialize("json", conversation_deal)
return HttpResponse(data)
這是Conversation_Deal是如何建模:
class Conversation_Deal(models.Model):
conversation = models.ForeignKey('Conversation')
deal = models.ForeignKey('Deal')
status = models.ForeignKey(DealStatus, null=True, blank=True)
我發現了一些有關繼承的類documentation指出這爲什麼......即使我不是繼承,BU同樣的過程在我的情況下工作。希望這可以幫助別人。我會很快發佈這個答案。
如果你顯示你得到的異常(和回溯),你會得到更好的幫助。 – 2012-07-21 11:33:56
「失敗」是什麼意思?序列化,還是對web服務的調用?如果是後者,則需要提供有關該服務的更多信息;它可能只是不支持你正在嘗試的那種呼叫。 – 2012-07-21 11:36:12
@Kave:這不是一個實際的例外,它當然不是一個完整的追溯。確實,更多的實際信息將有所幫助。 – 2012-07-21 11:41:43