db Expando サブクラスから ndb PolyModel サブクラスの参照プロパティにアクセスしようとしています。私の2つのクラスは次のようになります。
class Foo(polymodel.PolyModel):
...
class Bar(db.Expando):
...
foo_reference = db.ReferecnceProperty(None, collection_name='foos')
...
2 つの定義は、別のファイルにあります。次の方法で参照を割り当てます。
...
foo = Foo.query.get()
bar.foo_reference = ndb.Key.to_old_key(foo.key)
...
これを行うのに問題はありません。アプリ エンジン ダッシュボードのデータベースに保存されているエントリを確認できますが、foo_reference にアクセスしようとすると、「種類 Foo の実装がありません」という例外が発生します。問題の行は次のようになります: foo = bar.foo_reference.get()
私はすべてのインポートをダブルチェックし、エンティティにアクセスしようとする Foo エンティティを実際に作成できます。ndb を参照するための db 参照プロパティに制限はありますか? この問題を解決するにはどうすればよいですか?