POST 请求时的 Bottle FormsDict 缺失值

问题描述

我正在运行一个具有多个输入元素的简单表单界面。我想向其中添加一个字段,但突然其中一个字段不再起作用。

这是html的片段:

                            <input name="user_uuid" value="{{ user.uuid }}"/>
                            <input name="company_uuid" value="{{ uuid }}"/>
                            <input name="details_format"  id="details_format" value="csv" /> #<--- This strangely is missing.

我使用 JSON 发布元素

        $("#{{ user.uuid }}_submit").mousedown(function (event) {
            let action = "/reports"
            submit_to_modal({

                    'user_uuid': $('#user_uuid').val(),'company_uuid': $('#company_uuid').val(),'details_format': $('#details_format').val(),},action,'post'
            )

        })

然后在只有授权用户才能访问的 Bottle FormDict,@JSONResponse 检测器中接收此数据:

@JSONResponse
def users_post(self):


    try:
        user_uuid = self.params['user_uuid']
        company_uuid = self.params['company_uuid']
        details_format = self.params['details_format']

    except KeyError as e:
        return {"message": str(e)}

我从 user_uuid 和 company_uuid 得到了回报,但奇怪的是,对于 details_format,我收到了一个关键错误,即使它包含在表单中。有没有人在 Bottle+hml 实现中遇到过这个问题?如果是这样,您如何修复或调试它?

清单:

  • 检查 HTML 是否存在该值 y console.log
  • 检查了 JSON,发现它在接收数据时没有问题。
  • 检查了表单工作流程,没有发现任何妨碍接收特定密钥的语句。
  • 检查这仅在第一级 POST 期间发生,尚未对数据进行任何处理
  • 检查调试控制台发现 details_format 中没有 params

我需要有关如何调试此问题的所有小线索,我一直在寻找解决方案但找不到。感谢您的帮助

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)