如何进行URL国际化?

2024-04-28 08:11:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个关于网站URL地址国际化的问题。在

问题是如何使之正确?

我想做的就是这样。在

假设您的地址栏中有一个网址

www.mydomain.com/en/book

然后,如果您键入www.mydomain.com/de/book,您将被重定向到站点的德语版本,因此url将更改为www.mydomain.com/de/buch,依此类推。在

想法:

我想做一张表格,作为不同语言之间的词典。对于网站内容,我仍然会使用i18n,但我认为对于url它是不能应用的。在

实施

我想修改路由.py在调用任何连接之前,我可以在URL中识别出用户需要的语言,并将其存储在会话变量中,以便以后与i18n一起使用。然后,我将用户重定向到该语言的正确url并调用poper控制器/操作。在

欢迎提出任何意见、建议或建议。在

编辑(2011-04-04 18:35):

  1. 我刚刚提醒自己,我已经在Opera Blog上遇到过类似的问题
  2. StackOverflow有一个问题:Pylons application Internationalization,但它只处理站点国际化,包含url没有问题
  3. WZeberaFFS指出了一个小问题,如果不考虑参考以前的语言设置
  4. 附加问题:数据库中应该存储什么,以使其快速工作?我有自己的想法,但我以后再试一次。在

Tags: 用户com语言url站点网站地址www
2条回答

我不知道在Python中是如何实现的,但是通常人们通过某种URL重写器或URL过滤器来完成这类事情,这些东西会同时消耗您的URL并重定向到正确的页面设置语言环境。在

我相信您的实现将像log一样工作,因为不同的页面没有相同的名称,比如如果您有一个名为www.mydomain.com/en/music的页面,如果music在德语中是book,那么问题是如果您想转到www.mydomain.com/fr/music,那么您不知道您是以/de/还是{}的形式出现。但这只是一个问题,如果你在不同的页面上有不同的名字交叉语言,它仍然可以工作,如果你有相同的名称,在两个不同的语言,你不会真正知道他们的形式,但你会知道他们的方向。在

如果你有这个问题,那么你必须保存一个会话或希望客户端发送一个推荐。在

相关问题 更多 >