【问题标题】:Data gets corrupted on form send, =\r\n introduced in the data every 75 characters?表单发送时数据损坏,=\r\n 每 75 个字符在数据中引入?
【发布时间】:2012-08-10 14:55:30
【问题描述】:

我正在 Google App Engine 上使用 Django nonrel 开发一个项目,但我觉得我的问题与这些都没有直接关系。

我在其中一个模型中有一个隐藏字段,定义如下:

models.CharField(max_length=400, null=True, blank=True,default="{}")

该字段用于从我的管理员中的小部件接收 JSON 数据,并且在客户端中其值会正确更改。

(发送哪些数据与我的问题无关 - 字段值中的任何字符串都已损坏)

问题是 - 当我查看传递给 django 保存函数的数据时,我看到每 75 个字符我在数据字符串中得到=\r\n。这有效地破坏了字符串,使我的数据无用。我不知道这是从哪里来的,也不知道是什么原因造成的。

更多有趣的点:

  • 管理员表单有 enctype='multipart/form-data',因为我使用 GAE blobstore 以该表单上传文件
  • 我正在使用 django-filetransfers 来帮助使用 blobstore
  • 我检查了浏览器发出的请求,发出的数据是干净的
  • Django 将模型中的数据保存为 UTF8

我在谷歌上没有找到任何与我的问题很接近的东西...

有人有解决办法吗?或者也许是从哪里开始寻找的方向?

【问题讨论】:

    标签: django forms google-app-engine blobstore django-nonrel


    【解决方案1】:

    原来问题是this bug in Google App Engine的结果

    我在这里找到了我的解决方案:Encoding problem in app engine when submitting multipart/form-data forms

    使用该线程中的 Andres Bossard 中间件修复解决了问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-02
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-22
      • 1970-01-01
      相关资源
      最近更新 更多