问题标签 [generic-foreign-key]

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 回答
1293 浏览

django - 在 django 中显示 GenericForeignKey 关系的内联管理表单

我的模型.py

占位符可以通过通用外键关系引用 4 个类中的任何一个。page 与占位符有 many2many 关系,表示一个页面可以包含一堆不同的模型。

和我的 admin.py 相同。

现在我想要的是在页面管理视图中,显示用于编辑 pageplaceholder 的显示内容对象的表单。试图获得该内联给我一个错误,说该对象不是一个类。admin.py 是否有一个不错的解决方案,或者我是否有必要创建一个新表单并查看以正确显示这些模型表单?

0 投票
1 回答
396 浏览

django - 可以对 GenericForeignKey 对象使用 Django 模板“_set.all”吗?

我有一堆模型 A 的对象(这真的不重要..),我有一个模型 B,位于另一个应用程序中。

模型 B 指的是其他对象:

我只对包含对模型 A 类型的引用的对象感兴趣。是否可以(以某种方式)使用模板“向后”功能来检索它们?

我试过了:

但它似乎不适用于“泛型”..?

0 投票
1 回答
800 浏览

django - 在 Django 1.5 中用 get_object 替换 get_context_data

我有一个 CreateView,我需要在其中从对象输出数据。下面的代码可以正常工作

但我想知道是否可以将dispatch()and替换get_context_data()get_object(). 我已经尝试了下面的代码,但它没有给我项目作为对象。

0 投票
3 回答
7184 浏览

python - Django:使用内容类型框架的通用关系示例?

我已经多次仔细研究了有关内容类型框架的 Django 文档,但我对它的理解还不够好,无法在我的项目中实现通用关系。我一直在寻找有关此事的在线示例或教程,但我找不到一个。叫我笨蛋,但我需要一些帮助(请不要通过简单地链接到文档来回答)。基于网上资源的缺乏,我相信如果你用一个完整的例子来回答这个问题,你的答案可能是迄今为止关于 django 泛型关系的最有用的网上例子(奖金!)。

所以,我的问题是:有人可以展示一个简单的模型示例,或者几行代码来展示如何与通用模型的实例进行交互吗?


作为灵感,我认为这是一个非常常见的情况:

一个网站的媒体项目在很大程度上被视为相同,但略有不同。例如,假设有图像和视频项目,用户可以“喜欢”项目或对项目“评论”。喜欢和评论应该被同等对待,无论它们是发布在图像还是视频项目上。因此,如果有一个 ItemView 用于查看用户相册中的图像或视频,则可以进行以下类型的调用:mediaitem.comments.all()or len(mediaitem.likes.all())or comment.user_who_commented,而无需知道它是哪种媒体项目(图像或视频)。

我相信你需要六个模型

  • 抽象MediaItem
  • 两种不同类型的媒体项目:ImageItemVideoItem
  • 抽象MediaItemActions
  • 可以对媒体项目执行的两种不同类型的操作:LikeComment

如果你知道如何使用这个 Django 特性,请给我们看一个完整的例子!我觉得这将是一个非常强大的工具,并且渴望在我的应用程序中使用它。越明确越好。

0 投票
0 回答
1008 浏览

django - 限制其他应用的 GenericForeignKey 选择

我正在编写一个可重复使用的轮播应用程序。它需要引用主项目中的模型,所以我使用了通用外键。我在可重用的应用程序中有这样的东西:

现在我希望项目能够限制 content_type 的类型。如果我在上面的类声明中这样做,我可以重写该content_type行如下:

但是可重用的应用程序不知道它将与哪个模型一起使用,所以我想在以后的项目中限制选择。

这可以做到吗?例如像这样的伪代码:

实际上,我的目标是让管理员仅从特定模型中进行选择。因此,在那里实施它的解决方案会更好。

谢谢!

0 投票
1 回答
907 浏览

python - Django - GenericForeignKey 的动态表单

如何根据用户 content_type 选择创建/处理动态表单?

我正在编写一个视图/模板,用于添加一个模型持有其他模型的通用键的对象:

我想给用户一个页面(用于添加对象),他/她可以在其中填写标题、作者、...字段并选择 content_type(下拉列表)并填写所选 content_type 的字段,例如如果 FileModel 是文件选择。然后应该使用一个“发送”按钮将其发送到视图,在该视图中将创建所选 content_type 和 MainModels 的适当对象。我正在考虑使用一些 ajax/jquery 来“扩展”初始表单,其中包含来自选定 content_type 的字段,但欢迎任何其他关于如何正确执行的建议。

0 投票
2 回答
3688 浏览

python - sqlalchemy 通用外键(如在 django ORM 中)

sqlalchemy 有类似 django 的 GenericForeignKey 的东西吗?使用通用外国字段是否正确。

我的问题是:我有几个模型(例如,Post、Project、Vacancy,没什么特别的),我想为每个模型添加评论。而且我只想使用一个评论模型。值得吗?或者我应该使用 PostComment、ProjectComment 等?两种方式的优缺点?

谢谢!

0 投票
1 回答
1292 浏览

python - 如何在 Django 中使用通用外键引用来引用对象

我有一个 Django 应用程序,其中包含三个模型,这些模型使用 ContentTypes 和 Generic 来尝试并允许 Task 模型使用如何在 Django 中使用动态外键来对其他两个模型中的任何一个具有 ForeignKey?作为指南(尽管我承认我不知道这种方法发生了什么)。

通常,如果任务只有一个正常的外键来维护,我可以使用 Maintenance.task_set.all() 将所有任务连接到任何给定的维护,但是使用这个动态外键系统,该功能不起作用。有谁知道实现这种效果的替代函数调用?

0 投票
1 回答
645 浏览

django - 从 Django 查询中排除空的 GenericForeignKey 对象

我有一个ActivityLogDjango 模型,它定义了一个具有以下字段的通用外键:

我需要过滤相关未删除的ActivityLog实例(不是无)。objectDjango 不执行删除级联GenericForeignKey,我需要从查找中排除这些不需要的记录。有没有一种简单、标准和有效的方法来做到这一点?

在一个美好的世界中,我会使用类似的东西:

但这不起作用,因为object它不是数据库字段。

0 投票
1 回答
924 浏览

python - Django GenericForeignKey:当 2 个模型具有相同的相关名称时访问器冲突

当我syncdb,我得到很多这样的错误:

我的模型已经有相关的名称:

当我注释掉Transcription2and时,问题就消失了Transcription3,所以似乎 related_names 发生了冲突。我必须让它们独一无二吗?如果是这样,有没有办法做到这一点而不必在每个子类中编写样板代码?