2012-01-19 4 views
4

AppEngineでDjango Nonrelを使用しているアプリがあります。AppEngine:Django NonRelでExpandoクラスを使用していますか?

WebAppのdb.Expandoクラスに似た動的モデルを使用したいと思っています - これは可能ですか? ExpandoクラスはDNRレイヤーに公開されていますか?

+2

オプション3のhttp://stackoverflow.com/questions/7933596/django-dynamic-model-fields/7934577#7934577一般的にDjango-nonrelに適用されます。 –

+0

@GagandeepSinghありがとうございます。 'djangotoolbox.fields import DictFieldから'は、私が探していたものとまったく同じものでした。あなたが答えとしてそれを置くなら、私はそれに目を向けるでしょう。 – mikemaccana

答えて

4

DjangotoolboxのDictField & ListFieldを使用して、Django-nonrelで動的モデルを作成することができます。例えば、

from djangotoolbox.fields import DictField 

class Image(models.Model): 
    exif = DictField() 

と、

class Post(models.Model): 
    words = ListField(models.CharField(max_length=500)) 
    title = models.CharField(max_length=200) 
    content = models.TextField(blank=True) 

詳細はDjango dynamic model fieldsのオプション3を参照してください。

-1

Djangoは独自のDB抽象化レイヤーを実装しています。これはApp Engineのdbモジュール上に構築されていません。もしdjangoがそれ自体を提供しないなら、それは利用できません。

+0

はい、私はこれを知っています。したがって、 'ExpandoクラスはDNRレイヤーに公開されていますか?'質問に。 – mikemaccana

+0

@nailerしかし、この質問は文脈上意味をなさない:expandoクラスは使われていないので公開されていない。 Django-nonrelはApp EngineのDBフレームワークを使用しません。 _there_ではないので、公開することはできません。 –

関連する問題