我有一个属性,我将其存储为JSON对象,如下所示:
content = ndb.JsonProperty()
当我这样做时,我收到此错误:
line 1614, in _to_base_type
return json.dumps(value, 2)
AttributeError: 'module' object has no attribute 'dumps'
在ndb模型类中。
作为ndb.TextProperty
,它可以正常运行。也许我发送JSON错误,这是我发送的JSON对象:
{posttext: "What is your earliest memory of WWII?", linkdata: ""}
答案 0 :(得分:11)
你的应用中是否有一个名为'json.py'的模块或一个名为'json'的包?这将覆盖ndb尝试导入的json模块。解决方案是为该模块或包选择一个不同的名称。
答案 1 :(得分:1)
我所描述的内容在我尝试时效果很好:
from google.appengine.ext import ndb
class TestModel(ndb.Model):
foo = ndb.JsonProperty()
t = TestModel(foo={"posttext": "What is your earliest memory of WWII?", "linkdata": ""})
t.put()
Key('TestModel', 7001)
您是否可以详细了解您的具体操作方式?它与上面的代码段有什么不同?