问题标签 [django-polymorphic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
97 浏览

python-2.7 - 在 Django-Polymorphic 包中更改子类的“选择”

是否可以使用 django-polymorphic 包并在父类中有一个 CharField 并根据子类更改“选择”?

前任)

我以为我可以覆盖父类中的原始状态,但看起来我不能有重复的字段。

“'Circle' 类中的本地字段 'status' 与基类 'Shape' 中的同名字段冲突。”

我还希望能够在管理页面上列出状态。

0 投票
1 回答
638 浏览

django - 使用 Django-Polymorphic 包时如何根据实例类型进行过滤?

在使用 django-polymorphic 时,我不得不创建一个 Django 查询来根据实例类型进行过滤。

如何过滤 ClassA 对象,其项目是“ArtProject”?

ClassA.objects.filter( ...? ).update(some_value=0.0)

我试过通过以下方式分解它:

错误:“您不能在 FROM 子句中指定目标表 'ClassA' 进行更新”

我可能可以使用,但我正在尝试过滤相关的类......我不确定这是否是正确的方向...... https://django-polymorphic.readthedocs.io/en/stable /advanced.html#using-enhanced-q-objects-in-any-places

提前致谢!

更新: 我可以执行以下操作:

但是,如果 ArtProjects 有很多条目,则翻译后的 SQL 语句会很长。当 ArtProjects 有数千个条目时,我不确定是否应该避免使用“in”语句。

我正在研究 Q 语句,但我不确定在这种情况下如何使用它。 https://django-polymorphic.readthedocs.io/en/stable/advanced.html#using-enhanced-q-objects-in-any-places

但是,我提出了一个异常:('相关字段查找无效:​​instance_of',)

0 投票
2 回答
2143 浏览

django - 多态模型序列化器

我正在使用多态模型来设置通知:

我的模型:

目前我只有一个模型 WorkFlowNotification 从多态模型继承,但将来会有很多。

我试图在 API 中获取登录用户的通知计数(总数)..total 作为属性字段给出以提供相同的帮助

我的序列化器:

在视图中:

当我尝试运行服务器时,它显示:

0 投票
1 回答
106 浏览

django-rest-framework - django 基于 url 中的 kwarg 过滤查询集

我试图根据 url 中的 kwarg 过滤查询集。我的网址是这样的:

我想过滤url中是否存在type参数

目前,即使我将 url 中的类型指定为“工作流程”,它也没有进入 if 条件。可能出了什么问题?

0 投票
2 回答
61 浏览

django-rest-framework - 如果请求特定的 url,则更改模型字段

我正在使用 django rest 框架制作 API。如果我转到特定的 url,我只想更改模型中的一个字段,即读取字段

我的模型:

我制作的 API 列出了登录用户的通知。

我要实现的是:

如果我转到这个特定的 url,我想修改已读字段..例如,如果标记为未读,则设为 None。我还需要检查登录用户是否收到了带有该 ID 的通知。我知道基础知识以及如何创建 url

我最初的尝试是覆盖 update_API 视图中的 put 方法

0 投票
0 回答
205 浏览

django - 结合来自 2 个继承的 Django 模型的查询

我想执行预取。关键是:我有一个 baseModel 和继承的模型,这些模型与其他模型一样。但是我的 baseModel 没有与它们链接。这是伪代码:

如您所见,FrenchMovie 与字幕相关联,但 EnglishMovie 没有。我想预取我所有的电影,并预取字幕。我尝试了几种方法:

我得到:ValueError:无法查询“EnglishMovie 对象(1)”:必须是“FrenchMovie”实例。

我得到:AssertionError:无法在两个不同的基本模型上组合查询。

有小费吗 ?非常感谢。

0 投票
1 回答
300 浏览

python - Django-polymorphic - 我可以按内容类型指定顺序吗?

django-polymorphic用于多种产品类型。

我想设置默认排序(或在过滤时明确指定QuerySet)基于

我得到的最接近的是在ordering = ['polymorphic_ctype_id']模型中设置。class MetaProduct

所以现在我已经按型号类型对产品进行了分组,但我无法设置,哪种类型将是第一个,第二个等等......

如何确保Product.objects.all()将返回QuerySetordering - WoodProducts , PlasticProducts, IronProducts ?

编辑

所以它看起来像:

0 投票
0 回答
512 浏览

python - DRF 序列化问题:结合 django-simple-history 和 django-polymorphic

我正在使用常规的 Django 模型,但现在已经开始使用 和 将多态模型合并到我的 DRF REST API 项目django-polymorphicrest-polymorphic。我还django-simple-history用于跟踪数据库中条目的更改。这对于没有字段的普通模型和多态模型都可以正常工作HistoricalRecords(),但是在尝试与任何具有HistoricalRecords()字段的多态模型交互时会出错:

在我的多态模型序列化器中,我使用以下技术来序列化该history字段:

有没有办法排除material_ptr_id序列化器考虑该字段,因为它不是父模型的一部分,而只是子模型的一部分?还是我犯了其他明显的错误?感谢您对此的任何帮助。

0 投票
0 回答
223 浏览

python-2.7 - 使用 django-polymorphic 中的多态模型并针对代理模型进行查询时为空查询集

我正在使用 django-polymorphic 包: https ://pypi.org/project/django_polymorphic/

我正在查看文档中代理模型的文档: https ://docs.djangoproject.com/en/1.11/topics/db/models/#proxy-models

初始设置- 我使用常规 django 模型类尝试了以下操作:

Python 控制台:

但是,当我尝试在 Person 类上使用 django-polymorphic 中的 PolymorphicModel 并尝试相同的命令时,我得到一个空查询集。

变人模型

Python 控制台:

难道我们不应该期望 Queryset 包含我们创建的 Person 对象吗?

我的最终目标是创建代理模型来注册两个不同的 Django 管理页面。

谢谢!

0 投票
1 回答
178 浏览

python - 来自内容字段的 Django-polymorphic-tree list_display 对象名称

我想在 django-admin 站点上显示我的对象的名称,但是我正在使用 django-polymorphic-tree 并且我的对象的名称应该是该对象内容中的文本,我该怎么做?

我已经在多态树子类中尝试过 __str __() ,但这不起作用,因为 django-polymorphic-tree 在 admin.py 中使用 list_display 而没有别的。

这是我的models.py的一部分

和 admin.py 的一部分

总结一下,我只想将 Node 或 CategoryNode 类中的“to_show”变量添加到 list_display。