SQLAlchemy 国际化
项目描述
traduki: SQLAlchemy 国际化
traduki 包为基于 SQLAlchemy 的项目提供国际化辅助类。
安装
pip install traduki
使用
traduki 使用示例
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
import traduki
def get_current_language():
"""Current language callback for our project."""
return request.locale
def get_language_chain():
"""Language chain (fallback rule) callback for our project."""
return {'*': request.locale}
i18n_attributes = traduki.initialize(Base, ['en', 'ru'], get_current_language, get_language_chain)
Session = sessionmaker(bind=engine)
sess = Session()
class MyModel(Base)
title_id = i18n_attributes.i18n_column(nullable=False, unique=False)
title = i18n_attributes.i18n_relation(title_id)
"""Title."""
my_object = MyModel()
my_object.title = {'en': 'English title', 'pt': 'Portugese title'}
sess.add(my_object)
sess.commit()
assert sess.refresh(my_object).title.get_dict() == {'en': 'English title', 'pt': 'Portugese title'}
联系
如果您有任何问题、错误报告、建议等,请在 GitHub 项目页面 上创建一个问题。
许可
本软件根据 MIT 许可证 许可。
查看 许可证
© 2018 Paylogic International.
变更日志
1.3.2
修复了 get_ordered_languages 会就地修改配置语言列表的bug。
1.3.1
修复了在某些配置下在python 3上安装此库时出现的 UnicodeDecodeError。
1.3.0
修复了python 3兼容性
声明支持python 2.7、3.5、3.6、3.7、3.8
1.2.0
不要使用已废弃的AttributeExtension,请使用属性事件。
1.1.0
使用OR运算符进行LIKE_OPS,以在所有语言列中查找匹配项。
1.0.1
修复当无法检测到语言时,get_text_from_dict引发异常的问题。
1.0.0
首次公开发布
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
traduki-1.3.2.tar.gz (6.7 kB 查看哈希值)
构建分布
traduki-1.3.2-py2.py3-none-any.whl (8.1 kB 查看哈希值)
关闭
traduki-1.3.2.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b931dc1444df958939ad43e5ec27dc24820b02e8fbf3247e180d5a4da1265652 |
|
MD5 | f9013623c655caf6ae1af24d731ab55f |
|
BLAKE2b-256 | ecf9d426f9c861d672fe3c9a401786fbb033a2ba81aae650c72087becee00ab5 |
关闭
traduki-1.3.2-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f9ada30a15d1518f67163c6c999251aa1b470f8d53e36fb0c26a62c67ad05b6c |
|
MD5 | 0f3a3b07b4b56b1d70bda56a582727bc |
|
BLAKE2b-256 | 778fa8b76d5fc3ffe2e1b01a1b9ae03c0bcc66625129ee4be9d5b36da0b9e232 |