我想在我的一個表單中填充兩個外鍵字段。代碼的相關位如下:初始化外鍵丟失
if request.method == 'POST':
form = IssuesForm(request.POST or None)
if request.method == 'POST' and form.is_valid():
form.save()
else:
form = IssuesForm(initial={'vehicle': stock_number, 'addedBy': request.user, })
vehicle
指向Vehicle
類。 addedBy
是包含當前登錄的用戶。
然而,下拉菜單不被初始化,因爲我想......我還是要選擇車輛和用戶。從這我有兩個問題:
- 可能是什麼問題?
- 什麼是使這些表單爲只讀的最佳方式?
編輯1 的IssueForm
類看起來像這樣至今:
class Issues(models.Model):
vehicle = models.ForeignKey(Vehicle)
description = models.CharField('Issue Description', max_length=30,)
type = models.CharField(max_length=10, default='Other', choices=ISSUE_CHOICES)
status = models.CharField(max_length=12, default='Pending',
choices=ISSUE_STATUS_CHOICES)
priority = models.IntegerField(default='8', editable=False)
addedBy = models.ForeignKey(User, related_name='added_by')
assignedTo = models.CharField(max_length=30, default='Unassigned')
dateTimeAdded = models.DateTimeField('Added On', default=datetime.today,
editable=False)
def __unicode__(self):
return self.description
Form類
class IssuesForm(ModelForm):
class Meta:
model = Issues
exclude = ('assignedTo')
你能不能展示你的'IssuesForm'類? – 2010-03-02 18:15:07
@ Ben我已添加類 – Stephen 2010-03-02 18:34:41
您應該嘗試傳入其他字段之一的初始數據,例如描述。如果人口稠密,我會想象這個問題源於車輛的PK,而不是車輛物體本身。 – Adam 2010-03-02 18:37:21