首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >具有特定字段类型的模型的Tastypie脱水

具有特定字段类型的模型的Tastypie脱水
EN

Stack Overflow用户
提问于 2013-11-25 13:28:11
回答 1查看 730关注 0票数 1

我正在使用Django,Mezzanine和Tastypie来构建CMS。Tastypie公开了一个API,以便其他应用程序可以使用CMS中的数据。我有许多带有ImageFields的Django模型,我想在Tastypie的ModelResource脱水方法中为所有ImageFields执行一些特定的操作,即生成一些缩略图。与其在每个模型资源中重写脱水并按名称定位ImageFields,我希望能够自动检查资源的对应模型是否有ImageFields,如果有,则将缩略图添加到资源的包中。

总之,是否有一种方法可以迭代模型资源的相应模型字段并检查脱水方法中每个字段的类型?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-25 13:53:14

您可以使用ModelResource访问与Meta.object_class关联的模型。它要么是显式定义的,要么是从Meta.queryset推断出来的。可以从_meta实例的ModelResource属性访问元类。

模型的字段可以通过fields属性访问相应模型的元类(在_meta属性下可用)。

尽管如此,以下几点应能奏效:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class MyModelResource(ModelResource):
    class Meta:
        # If `object_class` is omitted, it's value is taken from
        # `queryset`, so defining both is optional.
        object_class = MyModel
        queryset = MyModel.objects.all()

    def dehydrate(self, bundle):
        # `model_class` == `MyModel`
        model_class = self._meta.object_class

        fields_list = model_class._meta.fields
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20203702

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文