设计模型字段的最佳方法是什么,就像Django中的列表一样?

时间:2016-02-29 01:17:54

标签: python django list model

假设我有一个名为“SysApp”的模型。每个系统有5个文件。每个文档都有字段:

  • 标题
  • 文件的URL(外部网址)
  • 说明

而不是定义多个字段,如

  • title_1,
  • url_1,
  • DESCRIPTION_1,
  • title_2,
  • url_2,
  • description_2 (硬编码方法)

有没有更好的方法来处理这种用例?

一种方法是创建存储每个文档的模型,然后SysApp将使用ForeignKey引用每个文档。但是我仍然需要创建document_1, document_2等字段。当 100+ SysApp和3-400 +文档时,编辑人员很难管理。

是否可以像列表或字典一样管理这些字段?

谢谢

1 个答案:

答案 0 :(得分:1)

我认为组织您的SysApp的最佳方式 - 文档'假设每个文档只与一个sysapp相关,则使用ForeignKey,就像你提到的那样。

在这种情况下,您只需要创建2个模型:第一个是SysApp,其中name字段,第二个是Document,字段为title },url to filedescriptionforeignkeySysApp。现在,您可以创建文档并将其附加到所需的sys。因此,您无需指定document_2document_3等字段。

如果您需要将一个文档附加到多个sysapp,请使用ManyToMany代替ForeignKey