【发布时间】:2016-03-22 17:40:34
【问题描述】:
我在 PostgreSQL 中有一个数据库,它连接 2 个不同的表,让我们称它们为 TBL1(TBL1 是所有类型的表)和 TBL2(TBL2 是例如汽车),TBL1 和 TBL2 有一个名为 type 的相同列,所以我在它们之间创建了外键。因为我不确定这是否与 Django 有任何关系......
所以,现在在模型中,我创建了(基于表单)变量,名为 type = models.ForeignKey('TBL1', db_column='type', related_name='type') 和它返回给我 Django 对象模型 ForeignKey,我猜这没问题。我想以 select 之类的形式展示它,但我不知道如何从 TBL1 获取数据。有什么办法可以做到这一点,因为我已经搜索了 2-3 天并尝试了其他选项,但没有一个能成功?我发现例如
STATUS_CHOICES = (
('new', _('New')),
('purchased', _('Purchased'))
)
status = models.CharField(max_length=200, default='new', choices=STATUS_CHOICES)
在表单中显示选择:
附言
Django 版本是 1.5.4 和 Python 2.7 ,我从未在 Django 或 PostgreSQL 中工作过,因此将不胜感激。问候
【问题讨论】:
-
您的表单应该已经创建了一个 ChoiceField,其中包含从 DB 为您填充的值。确保您使用的是
ModelForm,它会得到妥善处理。 -
TBL1和TBL2表是 django 创建的,还是事先创建的? -
@Rohit 会看看,这不是我的代码,我只是在修复错误 xD
-
@Tim 我创建了表格,不知道是否还有其他事情要做...
-
好吧,也许我的问题并不完全清楚:在您的
models.py中,您是创建了class TBL1(models.Model)和class TBL2(models.Model)类,还是它们只是存在于数据库中?
标签: python django postgresql django-models django-forms