我有一个python字典,我想存储在Google的BigTable数据存储中(它是db.Model
类中的一个属性)。在
有没有一个简单的方法可以做到这一点?i、 e.使用db.DictionaryProperty
?还是必须使用pickle来序列化我的字典?我的字典比较直截了当。它由字符串作为键组成,但也可能包含某些键的子字典。例如:
{
'myKey' : 100,
'another' : 'aha',
'a sub dictionary' : { 'a': 1, 'b':2 }
}
PS:我想序列化为二进制,而不是文本,如果可能的话。在
Tags:
我认为你不能避免序列化你的对象。在
我将定义以下模型来存储每个键、值对:
要保存到数据存储,我将使用:
^{pr2}$以及检索数据:
Here's another approach:
我想,当你需要接触到口述的时候,它是一次完成的?当dict在数据存储中时,您不必从dict内部获取值?在
如果是这样,则必须序列化,但不必使用pickle;而是使用simplejson。那么,检索是一个简单的重写toBasicType()的问题,类似于:
MyModel类(数据库模型): #定义一些属性,包括“data”,它是一个包含较大dict的TextProperty 定义烟草类型(自身): 返回{'metadata':self.getMetadata(), “数据”:simplejson.loads(自我数据)}在
创建包括调用MyModel(。。。,simplejson.dumps公司(数据),…)。在
如果你已经在酸洗,那可能是你最好的选择,但simplejson对我们来说工作得很好。在
相关问题 更多 >
编程相关推荐