Python 用Django制作一本书的模型
我试图对包含多个长部分的文章进行建模。这些部分应该可以一个接一个地访问,这样我就可以跨页面分割这些部分并创建目录。对于编辑,我希望两者都是可能的,一个接一个地编辑,并且作为一个整体。这几乎是MediaWiki长期以来所能做到的 简单地在文章的一部分添加一个外键有一些缺点。你不能对文章进行整体编辑,也没有对部分进行排序,只有Django管理员中的一个随机列表。另外,我认为它可能会对性能产生一些不良影响,因为大多数文章可能会同时作为一个整体显示,这将涉及反向的ForeignKey决议Python 用Django制作一本书的模型,python,django,django-models,Python,Django,Django Models,我试图对包含多个长部分的文章进行建模。这些部分应该可以一个接一个地访问,这样我就可以跨页面分割这些部分并创建目录。对于编辑,我希望两者都是可能的,一个接一个地编辑,并且作为一个整体。这几乎是MediaWiki长期以来所能做到的 简单地在文章的一部分添加一个外键有一些缺点。你不能对文章进行整体编辑,也没有对部分进行排序,只有Django管理员中的一个随机列表。另外,我认为它可能会对性能产生一些不良影响,因为大多数文章可能会同时作为一个整体显示,这将涉及反向的ForeignKey决议 现在你会怎么做
现在你会怎么做?是否有一些库或框架可以简化这种关系?models.py:
class Article(models.Model):
title = models.CharField(max_length=X)
...
class Part(models.Model):
article = models.ForeignKey(Article)
order = models.IntegerField()
subtitle = models.CharField(max_length=X)
content = models.TextField()
...
class Meta:
ordering = ('order',)
您必须在每个部分中设置顺序,每个查询将返回按此字段排序的部分
使用可以从文章的管理页面编辑文章的所有部分
不应该有性能影响:如果查询正确完成,一篇文章的所有部分(甚至多篇文章的所有部分)只需在数据库上点击一次就可以返回。阅读有关和的文档。InlineModelAdmin的内容正是我要找的。谢谢