Python 从WordPress迁移到Django时,如何将百分比编码的slug字段转换为unicode?

Python 从WordPress迁移到Django时,如何将百分比编码的slug字段转换为unicode?,python,django,url-encoding,Python,Django,Url Encoding,我正在将Wordpress数据迁移到Django。当前网站的标题、内容和slug都是印地语 我正在使用wordpress_xmlrpc通过xmlrpc从wordpress导入数据 所有的内容标题和内容都是印地语的,并且可以访问和保存 instance.name = post.title instance.content = post.content 而Django鼻涕虫也有问题 已经试过以下方法,不起作用 instance.slug = unicode(post.slu

我正在将Wordpress数据迁移到Django。当前网站的标题、内容和slug都是印地语

我正在使用wordpress_xmlrpc通过xmlrpc从wordpress导入数据

所有的内容标题和内容都是印地语的,并且可以访问和保存

    instance.name = post.title
    instance.content = post.content
而Django鼻涕虫也有问题

已经试过以下方法,不起作用

    instance.slug = unicode(post.slug)
    instance.slug = post.slug
对于不工作,在一种情况下,slug保存为

     %e0%a4%9c%e0%a4%b2%e0%a5%8d%e0%a4%a6-%e0%a4%b8%e0%a4%bf%e0%a4%b2%e0%a5%8d%e0%a4%b5%e0%a4%b0-%e0%a4%b8%e0%a5%8d%e0%a4%95%e0%a5%8d%e0%a4%b0%e0%a5%80%e0%a4%a8-%e0%a4%aa%e0%a4%b0-%e0%a4%a6%e0%a4%bf
它也无法访问

正在获取404,找不到的页面

 http://localhost:8010/%E0%A4%9C%E0%A4%B2%E0%A5%8D%E0%A4%A6-%E0%A4%B8%E0%A4%BF%E0%A4%B2%E0%A5%8D%E0%A4%B5%E0%A4%B0-%E0%A4%B8%E0%A5%8D%E0%A4%95%E0%A5%8D%E0%A4%B0%E0%A5%80%E0%A4%A8-%E0%A4%AA%E0%A4%B0-%E0%A4%A6%E0%A4%BF/
WordPress有着类似鼻涕虫的功能 /तापसी-पन्नू-ने-अक्षय-कुमा/


有人知道如何解决这个问题。

要在迁移中转换百分比编码,可以使用django内置的
uri\u to\u iri
函数

>>> from django.utils.encoding import uri_to_iri
>>> old_slug = '%e0%a4%9c%e0%a4%b2%e0%a5%8d%e0%a4%a6-%e0%a4%b8%e0%a4%bf'
>>> new_slug = uri_to_iri(old_slug)
>>> print(old_slug, '->', new_slug)

%e0%a4%9c%e0%a4%b2%e0%a5%8d%e0%a4%a6-%e0%a4%b8%e0%a4%bf -> जल्द-सि
这将把wordpress slug转换为unicode:

instance.slug = uri_to_iri(post.slug)

你说的“不起作用”是什么意思。出了什么问题?我刚刚更新了这个问题,但是slug保存为一个案例中的状态e0%a4%9c%e0%a4%b2%e0%a5%8d%e0%a4%a6-%e0%a4%bf%e0%a4%b2%e0%a5%8d%e0%a4%a4%b5%e0%a4%b0-%e0%a4%b8%e0%a5%8d%e0%a4%95%e0%8d%e0%a4-%b0%e0%e0%a5%a5%80%e0%a4%a8-%e0%a4%a4%e0%a4%a4%a4%a4%b0%e0%a4%a4%。slug在wordpress中是什么样子的?404的调试页面是什么?你们有一个有效的url路由可以工作吗?当前的slug如下/तापसी-पन्नू-ने-अक्षय-कुमा/