【问题标题】:AppEngine: using Expando class in Django NonRel?AppEngine:在 Django NonRel 中使用 Expando 类?
【发布时间】:2012-01-19 10:23:41
【问题描述】:

我有一个在 AppEngine 上使用 Django Nonrel 的应用程序。

我想使用类似于 WebApp 的 db.Expando 类的动态模型 - 这可能吗? Expando 类是否暴露于 DNR 层?

【问题讨论】:

标签: google-app-engine django-nonrel expando


【解决方案1】:

您可以使用 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。

【讨论】:

    【解决方案2】:

    Django 实现了自己的 DB 抽象层 - 它不是基于 App Engine 的 db 模块构建的。如果 django 自己不提供,则不可用。

    【讨论】:

    • 是的,我知道这一点。因此询问“Expando 类是否暴露于 DNR 层?”在问题中。
    • @nailer 但是这个问题在上下文中没有意义:expando 类没有公开,因为它没有被使用。 Django-nonrel 不使用 App Engine 数据库框架。不可能暴露它,因为它不在那里
    猜你喜欢
    • 2014-09-11
    • 1970-01-01
    • 2012-01-03
    • 1970-01-01
    • 2011-10-31
    • 2014-07-24
    • 2013-02-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多