Django 国际化和本地化

他分为models, views和模版(templates)三处的英文转化。

首先settings

增加一个locale的中间件

增加LANGUAGES

增加LOCALE_PATHS 并且手动创建locale文件夹

在模板中增加如下标签

执行

python manage.py makemessages -l en

会生成如下文件

修改django.po文件,增加翻译的文字

修改url ,此url文件必须是项目的根url那个文件。

重启服务器

访问

http://192.168.119.54:8080/en/adminbd/ap_list

http://192.168.119.54:8080/zh-hans/adminbd/ap_list

查看效果

最后来添加切换语言的功能

添加切换语言的url:

页面上增加如下的form表单(必须是POST请求)

并且增加如下的JS代码

如果是涉及到登录认证系统,在登录成功后添加session,具体可以自己读源代码

并且每次请求把这个session值传到前台。

完成,这样就可以在页面中切换语言了。

时间: 2024-11-09 01:51:03

Django 国际化和本地化的相关文章

(转) IOS程序名称及内容国际化(本地化)

1.IOS程序名称国际化 1.1 新建一个Single View app模版项目,命名为Localization. 1.2 新建后,可以看到工作目录结构文件如下,单击InfoPlist.strings,查看右边的属性,在Localization栏添加语言.      1.3 添加完成后打开对应语言文件,比如English的添加 CFBundleDisplayName="China"; Chinese文件添加 CFBundleDisplayName="中国"; 运行,

iOS: 设置App的国际化和本地化

原文链接:http://www.cocoachina.com/appstore/20160310/15632.html 前言 App的名字设置方式有很多种,如果在App打包上线时不做修改,最终App的名字就是Xcode在建立工程时的名字.好的习惯是工程建立时使用英文(pinyin),那么App也就是“英文”名字了,虽然Xcode也支持直接用中文命名工程(甚至是方法名……),但有时也会因此产生一些不必要的麻烦甚至莫名其妙的bug.本文主要介绍两种设置App名称的方法,第一种较为简单,第二种涉及简单

IOS软件国际化(本地化Localizable)

IOS软件国际化(本地化Localizable) iPhone是支持语言最多的手机,它支持各国语言及中国少数名族如蒙古等语言,这也是好多少数名族都用苹果的原因.在这一点上我们自主品牌还是要多学习学习.在IOS软件开发中,可以通过几步简单的设置让软件支持多国语言. 言归正传,现在说说如何让自己开发的应用支持多国语言,具体操作如下: 一.新建ios工程,工程名随便,我这儿用的是Localizable联系(本地化). 二.新建完成打开后,点击项目结构树最上面的项目名Localizable联系(本地化)

第十四章 提升用户体验 之 设计实现国际化和本地化

1. 概述 把程序设计成可以被多种文化下的用户去使用,这个过程就是 全球化. 全球化又被分成两个部分:国际化和本地化. 国际化 是 设计程序去支持多种文化下的用户的过程. 本地化 是 把 数据.标签.帮助文件.支持文档等翻译成当前用户可理解的过程. 本章内容包括:本地化策略.为UI创建和应用资源文件.设置文化区域.创建附属资源集. 2. 主要内容 2.1 设计本地化策略 未完待续...

Swift - iOS应用的国际化与本地化

在Xcode中我们可以很方便的将APP适配各种本地化语言.苹果的框架已经帮我们把不同语言的数据分离开,包括图片,声音,视频,文档,用户界面文字(甚至代码中编写的用户界面文字),它们会被建立在同一个bundle中,便于我们管理. 下面分别介绍字符串,图片,应用程序名是如何实现多语言本地化,以及如何切换语言进行测试. 效果图如下:         1,本地化字符串 (1)项目配置 -> “Info” -> “Localizations”区域下,可以看到工程默认只支持英文,我们可以再添加中文语言.

Django国际化

不同的网站有可能被不同国家地区的人访问,为了让不同的国家或者地区的人有更好的客户体验,对web程序进行国际化设置就很有必要了. 1.Django进行国际化的机制 以下是我的目录树: 我这里创建了一个internationlization的项目,然后在项目下面创建了一个被称为translation的应用程序.我们要进行国际化,首先要通过django.utils.translation包里面的方法定义需要进行国际化的字符串,比如我用的是ugettext_lazy ,通过函数包装并返回可供国际化使用的

Django国际化注意事项

涉及两部分内容: py/html文件国际化.外部js文件国际化 步骤 1. settings.py 激活相应的配置 2. 针对py文件,需要注意被翻译代码的编写方式 3. 针对html文件,需要注意被翻译字符的编写方式 4. 外部脚本js,包含一些交互提示信息,国际化版本需要翻译这些信息.要实现web标准化,我们首先必须实现HTML页面结构.行为.样式的分离.如何不改变外部脚本的引入方式,同时实现外部脚本国际化的问题?django提供了针对外部脚本国际化的解决方案! 一.settings.py配

App名称国际化与本地化

最近对APP名字感兴趣,就研究了下,将过程跟大家分享哈. 第一步:新建一个InfoPlist文件,这个名字可以随意起 第二步 : 添加Chinese(Simplified) 第三步 : 然后会弹出框,选择Chinese(Simplified) 然后出现了下面的页面,在Locallization下面选项的全部勾选 在对应语言下写对应于语言下APP的名字 运行工程后,你会发现没有什么用,不要着急 然后你将本地化语言都取消勾选 然后运行工程,就OK了(注意切换模拟器的语言)

AngularJS开发指南7:AngularJS本地化,国际化,以及兼容IE低版本浏览器

AngularJS本地化,国际化 国际化,简写为i18n,指的是使产品快速适应不同语言和文化. 本地化,简称l10n,是指使产品在特定文化和语言市场中可用. 对开发者来说,国际化一个应用意味着将所有的文字和其他因地区而异的数据从应用中抽离出来. 本地化意味着为这些抽离的数据和文字提供翻译和转变成本地的格式. 目前,AngularJS支持日期,数字和货币的国际化和本地化. 另外,AngularJS还通过ngPluralize指令支持本地多元化. 所有的AngularJS本地化组件都依赖于$loca