大家好我是Django
的新手,我尝试了一些我在网上找到的不同方法,但我仍然无法从POST
之后的选择下拉列表中获得价值。即使我将值硬编码为1只是为了测试它,我仍然无法获得该值。下拉列表正在填充正确,这意味着{{ d.name }}
有效。最初我的值也设置为{{ d.name }}
。我没有使用forms.ChoiceField
,因为当我制作表格时我还没有意识到这一点。这是我的代码:
forms.py
class MyForm(forms.ModelForm):
class Meta:
model = MyList
fields = ['field1', 'field2', 'field3' ]
模板:
<div class="form-group pull-right">
<label class="control-label" for="apply"> Apply: </label>
<select class="span4" name="apply" id="apply">
{% for d in devs %}
<option name="somename" value=1>{{ d.name }}</option>
{% endfor %}
</select>
</div>
views.py
def View(request):
if request.method == "POST":
form = MyForm(request.POST or None)
if form.is_valid():
print(request.POST["apply"])
models.py
class MyList(models.Model):
field1 = models.CharField(max_length=150, blank=False, unique=True)
field2 = models.CharField(max_length=150, null=True, blank=True)
field3 = models.CharField(max_length=150, null=True, blank=True)
提前感谢您的帮助。