0

在 GAE 中建立网站。我在拥有数据库的开发服务器中完成了大部分工作。在我的开发服务器中,我在 UTF-8 中插入了实体,因为如果我不这样做,这些值就不会被写入。但是,这使我不得不使用{{ nom.titre.encode("utf-8")}}jinja2 才能正确显示它们。我知道 GAE 数据存储仅使用 UNICODE,因此我可以预见我现在面临的问题。

所以,我曾经appcfg.py download_data --url=http://localhost:8080/_ah/remote_api/ --filename=filename.csv --kind=-kind- 备份我的开发数据存储。

现在的问题是当我尝试更新到服务器时。

要么我使用:

  • appcfg.py upload_data --url=http://as.appspot.com/_ah/remote_api --kind=kind --filename=filename.csv 但是 {{ nom.titre.encode("utf-8")}} 使用 jinja 在 GAE 上出错

或者

  • appcfg.py create_bulkloader_config --filename=G:\Backup\datastore\bulkloader.yaml --url=http://toolsetdocs.appspot.com/_ah/remote_api

    transformers:
    - kind: CISP
      connector: csv
      connector_options:
        encoding: utf-8
    

    我得到一个错误UnicodeDecodeError : 'utf-8' codec can't decode......等等

那么,将我的开发服务器数据存储的信息上传到 GAE 数据存储的最直接方法是什么,保持 UTF-8 并且不更改模板编码?

4

1 回答 1

1

存储字符串时,应使用decode('utf-8')然后进行编码以用于显示目的。您当前正在模板中执行此操作,但您应该在存储预期的 UTF-8 字符串时对其进行解码。

于 2012-12-16T20:17:03.633 回答