Flask获取表单数据不能存入mongodb问题?

新手上路,请多包涵

题目描述

我用Flask做了一个表单页面,但是表单数据无法保存到mongodb。

题目来源及自己的思路

但是使用另一个邮件表单又可以保存。。。我不知道哪里写错了,且没有提示任何错误。

相关代码

粘贴代码文本(请勿用截图)

无法保存数据库的路由

@app.route('/index', methods=['GET', 'POST'])
def postaction():

homeform = PayForm()
if homeform.validate_on_submit():
    amount = request.form['amount']
    doc = {
        '数量': amount
    }
    acc.insert_one(doc)
return render_template('index.html', homeform=homeform)

可以正常保存数据库

@app.route('/contact', methods=['GET', 'POST'])
def mail_1():

forms = ContactForm()
if forms.validate_on_submit():
    email = request.form['email']
    doc = {
        '数量': email
    }
    acc.insert_one(doc)
return render_template('mail.html', form=forms)

HTML表单代码

<form action="/index" method="post" class="text-center p-10" onsubmit="submitForm()">

        {{ homeform.csrf_token }}
        <div>
            {{ homeform.amount.label }}
            {{ homeform.amount(class="border border-black", size="6") }}
            {{ homeform.accounts(class="border border-black") }}
            {{ homeform.submit2(class="border border-black w-12 rounded") }}
        </div>
    </form>

wtforms代码

class PayForm(FlaskForm):

amount = StringField('Amount', validators=[DataRequired('Amount is required')])

accounts = core.SelectField(
    label='Accounts',
    choices=(
        ('FB','facebook'),
        ('tw','tweite'),
        ('ins','instagram'),
    )
)

payment = core.SelectField(
    label='支付方式',
    choices=(
        ('Perfectmoney', 'Perfectmoney'),
        ('payssion', 'payssion')
    )
)
submit2 = SubmitField('OK')

mongodb保存的邮箱数据

你期待的结果是什么?实际看到的错误信息又是什么?

希望有人帮我指出错误或解决方案

阅读 937
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题