【发布时间】:2013-07-12 20:37:31
【问题描述】:
我对 Django 中的约定很好奇。我可能在这里完全偏离了轨道,但在我看来,ForeignKey 通常可以取代在 Django 中定义自己的自定义字段的需要。
例如,这就是我的代码现在的样子,
class MyObject(models.Model):
object_type = models.ForeignKey(Object_Type)
class Object_Type(models.Model):
value = models.CharField(max_length=20)
不能用这样的东西代替吗?
class MyObject(models.Model):
object_type = models.CustomField()
自定义字段是我定义的一个字段,它涵盖了所有(例如 10 种) 我可能拥有的物品。 这两者之间的最佳方式是什么?
【问题讨论】:
-
对于这个例子,我推荐
ForeignKey方法,因为你已经为你准备好了一切。 -
假设我这样做......既然我知道我只有 10 个 object_types,我是否会用这十个值预先填充数据库而不让用户从该表中添加/删除?执行此操作的最佳方法是什么,customField 是否允许我不执行此操作?
标签: database django django-models