擅长:python、mysql、java
<p>此问题可能是由于:<a href="http://code.google.com/p/appengine-ndb-experiment/issues/detail?id=216" rel="nofollow">http://code.google.com/p/appengine-ndb-experiment/issues/detail?id=216</a></p>
<p>修复将在appenginesdk的下一个版本中进行。看起来您应该先将Expando模型存储在Expando模型中(取自“问题”页面):</p>
<pre><code>def test_expando_in_expando_with_lists(self):
"""Passes"""
class B(ndb.Expando):
pass
class A(ndb.Expando):
pass
a = A(a1 = [B(b1 = [0,1,2,3]),B(b2='b2test')])
new_a = A(**a.to_dict())
self.assertEqual(a, new_a)
</code></pre>
<p>我将查看上面示例中<code>a.to_dict()</code>的结构,并验证dictionary对象与您自己的dictionary对象的比较。另外,我相信这将生成一个StructuredProperty,而不是LocalStructuredProperty。在</p>
<p>如果可以预先定义属性类型,则此问题修复了一个类似的错误:<a href="http://code.google.com/p/appengine-ndb-experiment/issues/detail?id=207" rel="nofollow">http://code.google.com/p/appengine-ndb-experiment/issues/detail?id=207</a></p>