2012-04-18 13 views
4

私はそうのように、私はJSONオブジェクトとして保存していた属性を持っている:のGoogle AppEngineの、NDB、およびJSON

line 1614, in _to_base_type 
    return json.dumps(value, 2) 
AttributeError: 'module' object has no attribute 'dumps' 

content = ndb.JsonProperty() 

私はこれを行うと、私はこのエラーを取得しますndbモデルクラス内の

ndb.TextPropertyとして正しく動作します。たぶん私は、JSONが間違って送信しています、これは私が送信していますJSONオブジェクトです:

{posttext: "What is your earliest memory of WWII?", linkdata: ""} 

答えて

11

あなたのアプリに「json.py」という名前のモジュールや「json」という名前のパッケージがありますか?これは、ndbがインポートしようとしているjsonモジュールを上書きします。解決策は、そのモジュールまたはパッケージの別の名前を選択することです。

+0

はい、そうです、これが問題でした。 – prashn64

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) 

あなたはより多くのに行くことができます正確にあなたがこれをやっている方法についての詳細?上記のスニペットとの違いは?

関連する問題