【发布时间】:2010-12-11 02:12:29
【问题描述】:
我有一个固定的数据模型,它有很多数据字段。
类小部件(Models.model): widget_owner = models.ForeignKey(auth.User) val1 = 模型.CharField() val2 = 模型.CharField() ... val568 = ...我想通过让我的用户指定自定义数据字段来将更多数据填充到这个小部件中。这样做的明智方法是什么?将名称/值对存储在用户可以指定其他“小部件字段”的位置是个好主意吗?我的伪想法如下:
data_types = ('free_text', 'date', 'integer', 'price') 类 CustomWidgetField(models.Model) 所有者 = ForeignKey(auth.User) field_title = models.CharField(auth.User) field_value_type = models.CharField(choices = data_types) 类 CustomWidgetValue(models.Model) field_type = ForeignKey(CustomWidgetField) 小部件 = ForeignKey(小部件) 值 = 模型.TextField()所以我想让每个用户构建一种新类型的数据字段,该字段将应用于他们的所有小部件,然后为每个小部件中的每个自定义字段指定值。我可能不得不对这些自定义字段进行过滤/搜索,就像在本地字段上一样(我认为这比在本地字段上操作要慢得多。)但是规模是每个小部件有几十个自定义字段和每个用户的库存中只有几千个小部件。我也可以将自定义字段上的大部分搜索/过滤批处理到后端脚本中(也许。)
【问题讨论】:
标签: django django-models