gpt4 book ai didi

ruby-on-rails - 字符编码,如何区分?

转载 作者:行者123 更新时间:2023-11-29 13:59:34 26 4
gpt4 key购买 nike

来 self 的数据库的字符与直接写入源中的相同字符的编码方式不同。例如,单词 Permissões 直接在 HTML 中写入字符串与从数据库记录输出字符串时显示的结果不同。

# From the source
Addressable::URI.encode("Permissões.pdf") #=> "Permiss%C3%B5es.pdf"

# From the db
Addressable::URI.encode("Permissões.pdf") #=> "Permisso%CC%83es.pdf"

编码不同。但是my database is set to UTF-8 ,我正在使用 HTML5。可能是什么原因造成的?

enter image description here

由于这个问题,我无法下载上传到 S3 的文件。我试图强制编码 attachment.path.encode("UTF-8") 但这没有区别。

最佳答案

为了解决这个问题,因为我使用的是 Rails,所以我使用了 ActiveSupport::Multibyte::Unicode在将任何 unicode 字符插入数据库之前对其进行规范化。

before_save do
self.path = ActiveSupport::Multibyte::Unicode.normalize(path)
end

关于ruby-on-rails - 字符编码,如何区分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23620035/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com