最近公司准备扩张海外业务,所以要给 Django 系统添加 国际化与本土化 支持。国际化一般简称 i18n ,代表 Internationalization 中 i 和 n 有 18 个字母;本地化简称 L10n ,表示 Localization 中 l 和 n 中有 10 个字母。有趣的一点是,一般会用小写的 i 和大写的 L 防止混淆。
简单来说:i18n 是为国际化搭建框架,L10n 是针对不同地区的适配。举个简单的例子:
i18n:
datetime.now().strftime('%Y/%m/%d') # before i18n
datetime.now().strftime(ti