[英]Cannot enter text into form (Flask, WTForm)
我想用Flask和WTForms建立一個網站。 但是我無法使文本輸入起作用(該頁面不允許我在框中輸入任何文本)。 你能告訴我哪里錯了嗎?
該頁面如下所示:
這是我用WTForms創建的表單
from flask_wtf import FlaskForm
from wtforms import SubmitField, IntegerField
from wtforms.validators import DataRequired, NumberRange, EqualTo
class RequestDataForm(FlaskForm):
feature_count = IntegerField('Number of features', validators=[DataRequired(), NumberRange(min=1, max=50)])
effective_rank = IntegerField('Effective Rank', validators=[DataRequired(), NumberRange(min=1, max=EqualTo(feature_count))])
noise = IntegerField('Noise', validators=[DataRequired(), NumberRange(min=0, max=1)])
submit = SubmitField('Submit')
這是layout.html
<!DOCTYPE html>
<html>
<style>
</style>
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
</head>
<body>
<main role="main" class="container">
<div class="row">
<div class="col-md-8">
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
{% for category, message in messages %}
<div class="alert alert-{{ category }}">
{{ message }}
</div>
{% endfor %}
{% endif %}
{% endwith %}
{% block page_content %}{% endblock %}
</div>
</div>
</main>
</body>
</html>
這是我的page.html
{% extends 'layout.html' %}
{% block page_content %}
<div class="content-section">
<form method="POST" action="">
{{ form.hidden_tag() }}
<fieldset class="form-group">
<legend class="border-bottom mb-4">Fill with values.</legend>
<div class="form-group">
{{ form.feature_count.label(class="form-control-label") }}
{{ form.feature_count.label(class="form-control form-control-lg") }}
</div>
<div class="form-group">
{{ form.effective_rank.label(class="form-control-label") }}
{{ form.effective_rank.label(class="form-control form-control-lg") }}
</div>
<div class="form-group">
{{ form.noise.label(class="form-control-label") }}
{{ form.noise.label(class="form-control form-control-lg") }}
</div>
</fieldset>
<div class="form-group">
{{ form.submit(class="btn btn-outline-info") }}
</div>
</form>
</div>
{% endblock page_content%}
根據您的HTML,您只輸出每個表單元素的label
,而不是元素本身。 嘗試將它們全部更新為:
<div class="form-group">
{{ form.noise.label(class="form-control-label") }}
{{ form.noise(class="form-control form-control-lg") }}
</div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.