在用戶完成選擇併發布數據後,我無法捕捉到unit_id
中的值。有人可以幫我解決這個問題嗎?django表單給出:選擇一個有效的選項。該選擇不是可用選項之一
unit_id
下拉列表的值是從另一個數據庫表(LiveDataFeed
)獲得的。並且一旦選擇了一個值併發布了表單,它會給出錯誤:
選擇一個有效的選項。該選擇不是可用選擇之一。
下面是執行:
在models.py :
class CommandData(models.Model):
unit_id = models.CharField(max_length=50)
command = models.CharField(max_length=50)
communication_via = models.CharField(max_length=50)
datetime = models.DateTimeField()
status = models.CharField(max_length=50, choices=COMMAND_STATUS)
在views.py:
class CommandSubmitForm(ModelForm):
iquery = LiveDataFeed.objects.values_list('unit_id', flat=True).distinct()
unit_id = forms.ModelChoiceField(queryset=iquery, empty_label='None',
required=False, widget=forms.Select())
class Meta:
model = CommandData
fields = ('unit_id', 'command', 'communication_via')
def CommandSubmit(request):
if request.method == 'POST':
form = CommandSubmitForm(request.POST)
if form.is_valid():
form.save()
return HttpResponsRedirect('/')
else:
form = CommandSubmitForm()
return render_to_response('command_send.html', {'form': form},
context_instance=RequestContext(request))
是否將`.distinct`改爲`.distinct()`幫助? – 2011-12-16 15:21:46
這是一個錯字以上...它已被編碼爲.distinct()... – user1102171 2011-12-16 15:32:12