可选的 Weblate 模块¶
可以获得几个可选的模块来配置您的设置。
Git 导出器¶
2.10 新版功能.
使用 HTTP(S) 为您提供对底层 Git 仓库的只读访问。
安装¶
将
weblate.gitexport
添加到settings.py
中安装的 apps 中:
INSTALLED_APPS += ("weblate.gitexport",)
通过安装后迁移数据库,将现有的仓库导出:
weblate migrate
用法¶
模块自动钩入 Weblate,并且在 组件配置 中设置导出仓库 URL。仓库在 Weblate URL的 /git/
部分下是可以访问的,例如 https://example.org/git/weblate/main/
。
公共可用项目的仓库可以被克隆而无需认证:
git clone 'https://example.org/git/weblate/main/'
对存储库的受限制的访问(使用 Private access control 或在 REQUIRE_LOGIN
处于启用状态时)需要一个 API 令牌,获取位置在你的 user-profile:
git clone 'https://user:KEY@example.org/git/weblate/main/'
提示
成员或 Users 用户组与匿名用户默认通过 Access repository 和 Power user 角色访问公开项目。
账单¶
2.4 新版功能.
这用在 Hosted Weblate 上来确定付费套餐,跟踪收据和使用限制。
安装¶
1. Add weblate.billing
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.billing",)
运行数据库迁移,来可选地为模块安装另外的数据库结构:
weblate migrate
法律声明¶
2.15 新版功能.
这用在 Hosted Weblate 上,来提供所需的法律文档。它开始时提供空白文档,会希望您填充文档中后面的模板:
legal/documents/tos.html
服务条款文档
legal/documents/privacy.html
隐私政策文档
legal/documents/summary.html
服务条款与隐私政策的简短概况
注解
可以在这个 Git 仓库 <https://github.com/WeblateOrg/wllegal/tree/main/wllegal/templates/legal/documents> 中获取 Hosted Weblate 的法律文档。
这些很可能对您没有直接的用处,但如果调整来满足您的需求时,以此作为起点可能会比较方便。
安装¶
1. Add weblate.legal
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.legal",)
# Optional:
# Social auth pipeline to confirm TOS upon registration/subsequent sign in
SOCIAL_AUTH_PIPELINE += ("weblate.legal.pipeline.tos_confirm",)
# Middleware to enforce TOS confirmation of signed in users
MIDDLEWARE += [
"weblate.legal.middleware.RequireTOSMiddleware",
]
运行数据库迁移,来可选地为模块安装另外的数据库结构:
weblate migrate
编辑
weblate/legal/templates/legal/
文件夹中的而法律文档,与您的服务匹配。
用法¶
安装并编辑后,法律文档显示在 Weblate UI 中。
针对垃圾邮件的保护¶
你可以免受用户发送垃圾邮件的侵扰,方法是使用 Akismet 服务。
Install the akismet Python module (this is already included in the official Docker image).
获取 Akismet API 密钥。
Store it as
AKISMET_API_KEY
orWEBLATE_AKISMET_API_KEY
in Docker.
Following content is sent to Akismet for checking:
来自未认证用户的建议
项目和组件描述及链接
注解
这(除了其它事情以外)依赖于客户端的 IP 地址,适当的配置请参见: 在反向代理后面运行 。
签署 GnuPG 的 Git 承诺¶
3.1 新版功能.
所有的承诺可以由 Weblate 时间的 GnuPG 密钥签署。
1. Turn on WEBLATE_GPG_IDENTITY
. (Weblate will generate a GnuPG
key when needed and will use it to sign all translation commits.)
这个特性需要安装 GnuPG 2.1 或更新版。
您可以在 DATA_DIR
中找到密钥,而公钥显示在“关于”页面上:

2. Alternatively you can also import existing keys into Weblate, just set
HOME=$DATA_DIR/home
when invoking gpg.
频次限制¶
在 3.2 版更改: 频次限制先择接受更细粒度的配置。
在 4.6 版更改: The rate limiting no longer applies to superusers.
Weblate 的一些操作受到频次限制。在 RATELIMIT_WINDOW
的秒数内最多允许 RATELIMIT_ATTEMPTS
次数的尝试。然后阻止用户 RATELIMIT_LOCKOUT
时间。还有指定范围的设置,例如 RATELIMIT_CONTACT_ATTEMPTS
或 RATELIMIT_TRANSLATE_ATTEMPTS
。下面的表格是可用范围的完整列表。
后面的操作受到频次限制:
名称 |
范围 |
允许的尝试 |
频次限制窗口 |
锁定时间 |
---|---|---|---|---|
注册 |
|
5 |
300 |
600 |
将消息发送给管理员 |
|
5 |
300 |
600 |
登录时的密码验证 |
|
5 |
300 |
600 |
网站范围的搜索 |
|
6 |
60 |
60 |
翻译 |
|
30 |
60 |
600 |
添加到词汇表 |
|
30 |
60 |
600 |
开始翻译到一种新语言 |
|
2 |
300 |
600 |
如果用户没能在 AUTH_LOCK_ATTEMPTS
的次数内登录,那么账户的密码验证将关闭,直到完成了重置密码过程为止。
The settings can be also applied in the Docker container by adding WEBLATE_
prefix to the setting name, for example RATELIMIT_ATTEMPTS
becomes WEBLATE_RATELIMIT_ATTEMPTS
.
API 具有另外的速率限制设置,请参见 API 频次限制。
Fedora Messaging 集成¶
Fedora Messaging is AMQP-based publisher for all changes happening in Weblate. You can hook additional services on changes happening in Weblate using this.
The Fedora Messaging integration is available as a separate Python module
weblate-fedora-messaging
. Please see
<https://github.com/WeblateOrg/fedora_messaging/> for setup instructions.