我在網上搜索了同樣的東西,並得到了很多答案,但一些如何與他們中的任何一個工作。Django下拉框從數據庫表列中填充
表:
- 報告:REPORTTYPE(從ReportCategory外鍵),名稱,描述
- 報告類別:名稱,描述
forms.py
class ReportForm_insert(forms.ModelForm):
class Meta:
model=Report
invent = ReportCategory.objects.all()
print invent
reportType_id = forms.ModelMultipleChoiceField(queryset = invent)
fields =('name','description',)
model.py
現在class ReportCategory(models.Model):
name = models.CharField(max_length=20)
description = models.CharField(max_length=20)
def __unicode__(self):
return self.name
class Report(models.Model):
reportType = models.ForeignKey(ReportCategory)
name = models.CharField(max_length=200)
description = models.CharField(max_length=300)
def __unicode__(self):
return self.name
,元類中我試圖做兩件事情:
首先,填充與 ReportCategory表的「名稱」列中的值報告類型下拉框中。 其次,當表格中的所有其他字段都由用戶 填充並按下該按鈕時,字段中的數據應該保存在報表中的 中,同時記住ReportCategory表中的 的外鍵約束。
我不這麼認爲,這將顯示在下拉框和只有文本框的形式的答案。此外,下拉框必須從ReportCategory表的'name'列中填充 – Compuser7
模型表單上的ForeignKeys(默認情況下)顯示爲
如果這不是您所要求的,您可能會使您的模式/描述錯誤。我正在閱讀它,因爲用戶將使用表單創建報表對象,並且需要從可用選項列表中選擇報表類型。這些選項將由ReportCategory表提供,並將對名稱字段表示的用戶具有可視表示。 – John