我有一个网页,您可以在其中向数据库添加新计算机/IP,或从下拉列表中选择以前添加的。一切正常,除了用户从列表中选择一个项目后我得到的是它的索引,而不是它的名称。我怎样才能得到这个名字?我正在尝试将查询集作为向量访问,如此处所示,但出现 TypeError。
视图.py:
d = DropDownList(request.POST or None)
if d.is_valid():
c = request.POST.get('current')
return HttpResponse(d.qs[c-1])
模型.py:
class DropDownList(forms.Form):
qs = Computer.objects.all().order_by('name')
current = forms.ModelChoiceField(qs, widget=forms.Select(attrs={"onChange":'submit()'}))
class Computer(models.Model):
name = models.CharField(max_length=200, default='')
ip = models.CharField(max_length=200, default='')
def __unicode__(self):
return self.name
主页.html:
<form method="post">
{{ current }}
</form>