1
昨天发了一个问题,但我并不太清楚我在尝试什么。我正在努力寻找关于如何最好地实现这一点的任何有用的教程,以便向正确的方向微调将不胜感激。django精选内容字段
我建立了一个引用django_content_type的模型。我的想法是使用此模型来引用其他模型,以便可以将它们标记为“精选”内容,而不必在每个模型上放置新的“isFeatured”字段。
我希望能够做的就是在每个模型的管理员表单上显示一个复选框,指示是否显示内容。
class FeaturedContent(models.Model):
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
首先,这是正确的做法吗?
我是否需要创建自定义表单/模型字段?以及如何将该字段引入管理模板?
我一直在寻找(django.contrib.contenttypes)generic.py的内部,您可以清楚地看到模板数据的加载位置以及正在使用哪个模板。我想知道是否我需要扩展这个类而不是写自己的领域?
感谢您的帮助,
詹姆斯
多米尼克,谢谢你:) – Crungmungus 2010-01-25 06:25:57
我对此有点迟,但这种方式不允许你像ContentType方法那样容易地跨不同模型获取精选内容。您将不得不分别查询每个不同模型的特色内容,而不是仅仅在OP的方法中查询FeaturedContent模型 – 2011-05-27 13:29:13