Flask 登录页联系表

Flask 登录页联系表,flask,Flask,我学习了Flask,并开始为该项目创建一个简单的登录页。下面是处理联系人表单的路由 @app.route("/courses") def courses(): form = ContactForm() if request.method == 'POST': if form.validate() == False: flash('All fields are required.') return render_tem

我学习了Flask,并开始为该项目创建一个简单的登录页。下面是处理联系人表单的路由

@app.route("/courses")
def courses():
    form = ContactForm()
    if request.method == 'POST':
        if form.validate() == False:
            flash('All fields are required.')
            return render_template('courses.html', title="contact", form=form)
        else:
            msg = Message(recipients=['coterakg@gmail.com'])
            msg.body = """From: %s <%s>%s"""%(form.name.data, form.email.data, form.message.data)
            mail.send(msg)
            return render_template('courses.html', title="contact", success=True)
    if request.method == 'GET':
        return render_template('courses.html', title="contact", form=form)

你知道为什么这不起作用吗?

这里有一个很好的例子供你参考 这里有详细的步骤


我还建议您使用一些第三方服务作为邮件服务器Mandrill等。

预期的行为是什么?观察到的行为是什么?两者之间的差距是什么?
<form class="form-horizontal" action="{{ url_for('index') }}" id="contactform" method="post">
    <div class="modal-header">
        <h4>Задайте нам любой вопрос!</h4>
    </div>
    <div class="modal-body">

        {{ form.hidden_tag() }}

        <div class="form-group">
            <label for="contact-name" class="control-label">Имя:</label>
            <div>
                {{ form.name }}
            </div>

        </div>

        <div class="form-group">
            <label for="contact-email" class="control-label">Email:</label>
            <div>
                {{ form.email }}
            </div>
        </div>

        <div class="form-group">
            <label for="question" class="control-label">Ваш вопрос:</label>
            <div>
                {{ form.message }}
            </div>

        </div>
    </div>
    <div class="modal-footer">
        <a class="close-reveal-modal">&#215;</a>
        <button class="button" type="submit" value="contact" data-reveal-id="closeModal">Отправить</button>

        <div data-reveal class="reveal-modal" id="closeModal">
          <h1>Спасибо за Ваш вопрос!</h1>
          <a class="close-reveal-modal">&#215;</a>
        </div>

    </div>
</form>
from flask.ext.wtf import Form
from wtforms import StringField, BooleanField, SubmitField
from wtforms.validators import DataRequired

class ContactForm(Form):
    name = StringField("Name", validators=[DataRequired()])
    email = StringField("Email", validators=[DataRequired()])
    message = StringField("Message", validators=[DataRequired()])
    submit = SubmitField("Send")