【发布时间】:2010-10-26 06:06:58
【问题描述】:
我了解在 Django 中,ORM 不支持 MySQL 或 PostgreSQL 中的 ENUM 类型,因为这最初是 MySQL 扩展,不能跨其他 DB 类型移植。因此,这两个选项是对模型使用“选择”参数,或者使用外键引用。
这些方法的优缺点是什么?
对于像性别这样的东西,我假设你会使用“选择”,例如:
GENDER_CHOICES = (
('M', 'Male'),
('F', 'Female'),
)
...
gender = models.CharField(max_length=1, choices=GENDER_CHOICES)
但是,对于诸如州名之类的内容,支持和反对使用单独的表以及该表的外键的原因是什么?
state = models.ForeignKey(AustralianState)
在什么情况下你会使用其中一种与另一种?
干杯, 维克多
【问题讨论】:
标签: django django-models