Django 模型设计问题:运行时自定义字段?
我有一些关于Django的新手问题 我想写一个通用的票证管理系统,在这个系统中,站点管理员应该能够向票证添加自定义字段。数据库表似乎是在初始化时生成的,因此我不清楚如何在运行时添加自定义字段。 一种方法是拥有一长串不同类型的字段,所有字段都可以为空,并让管理员重命名/选择她需要的字段。有更好的设计吗Django 模型设计问题:运行时自定义字段?,django,Django,我有一些关于Django的新手问题 我想写一个通用的票证管理系统,在这个系统中,站点管理员应该能够向票证添加自定义字段。数据库表似乎是在初始化时生成的,因此我不清楚如何在运行时添加自定义字段。 一种方法是拥有一长串不同类型的字段,所有字段都可以为空,并让管理员重命名/选择她需要的字段。有更好的设计吗 谢谢 我目前负责维护一个类似的网站,其中列出了医疗条件的治疗,并且可以有任意数量的“病例”,它们是用户发布的治疗/条件组合体验 我的公司用来设置它的方法是有一个条目对象,它类似于您描述的自定义字段,
谢谢 我目前负责维护一个类似的网站,其中列出了医疗条件的治疗,并且可以有任意数量的“病例”,它们是用户发布的治疗/条件组合体验 我的公司用来设置它的方法是有一个条目对象,它类似于您描述的自定义字段,它有一个外键,引用它所属的治疗/条件 然后,当我们想要获得特定治疗/条件组合的所有条目时,我们只需执行
Entry.objects.filter(condition=ID)
因此,在您的情况下,我建议使用一个票证模型和一个“Entry”样式的模型,其中包含对它所属票证的外键引用。我将使用类似于下面代码的代码。在属性模型中存储额外属性。将值存储在AttributeValue中
class Ticket(models.Model):
name = models.CharField(max_length=200)
class Attribute(models.Model):
name = models.CharField(max_length=200)
class AttributeValues(models.Model):
attribute = models.ForeignKey(Attribute)
ticket = models.ForeignKey(Ticket)
value = models.CharField(max_length=200)