semantictouch/laravel-translation-manager

增强型Laravel翻译管理器

v8.0.3 2020-11-26 09:19 UTC

README

GitQ

此包用于通过Yandex翻译API的翻译辅助,轻松管理、查看、编辑和翻译Laravel语言文件。它通过大量实用功能增强了Laravel翻译系统。 功能

⚠️ 仅支持 MySQLPostgreSQL 数据库连接。添加其他数据库只需要实现额外的存储库接口实现,参考以下示例:MysqlTranslatorRepository.phpPostgresTranslatorRepository.php.

⚠️ 版本 2.6.10 有一个新的迁移

从早期版本升级时运行

$ php artisan vendor:publish --provider="Vsch\TranslationManager\ManagerServiceProvider" --tag=public --force
$ php artisan vendor:publish --provider="Vsch\TranslationManager\ManagerServiceProvider" --tag=migrations
$ php artisan migrate

支持的Laravel版本

  • 对于Laravel 8.x,需要:"vsch/laravel-translation-manager": "~8.0"

  • 对于Laravel 7.x,需要:"vsch/laravel-translation-manager": "~7.0"

  • 对于Laravel 6.0,需要:"vsch/laravel-translation-manager": "~6.0"

  • 对于Laravel 5.6,需要:"vsch/laravel-translation-manager": "~2.6"

  • 对于Laravel 5.5,需要:"vsch/laravel-translation-manager": "~2.5"

  • 对于Laravel 5.4,需要:"vsch/laravel-translation-manager": "~2.4"

  • 对于Laravel 5.3,需要:"vsch/laravel-translation-manager": "~2.3"

    从LTM 2.0或2.1升级到2.3

  • 对于Laravel 5.2,需要:"vsch/laravel-translation-manager": "~2.1"

Laravel 4.2版本不再支持。

您仍然可以获取最新更新的版本。使用 laravel4 分支,或者需要:"vsch/laravel-translation-manager": "~1.0"

已添加初始本地化

❗ 如果您对自动翻译的本地化进行了修改并希望与他人分享,请这样做。这将被非常感激。

详细信息现在在 wiki 中。

安装
配置
版本说明

2.6.16 添加了React App UI作为WebUI的替代方案

React_UI

发布版本 2.6.10

将React UI添加为WebUI的选项。

代码更新以兼容Laravel 5.6

添加了对JSON翻译文件的支持。 Versioninfo.md

发布版本 2.5.6

添加了对JSON翻译文件的支持。 Versioninfo.md

代码更新以兼容Laravel 5.5

发布版本 2.4.36

添加了对JSON翻译文件的支持。 Versioninfo.md

重要的LTM翻译方法更改,以恢复与Laravel 5.4 API的兼容性。这些更改会影响LTM实现中参数的顺序。如果您基于以前的LTM实现使用这些方法,那么您需要在代码中进行更改

transChoice($id, $number, array $parameters = array(), $domain = 'messages', $locale = null, $useDB = null)transChoice($id, $number, array $parameters = array(), $locale = null, $domain = 'messages', $useDB = null)

trans($id, array $parameters = array(), $domain = 'messages', $locale = null, $useDB = null) 修改为 trans($id, array $parameters = array(), $locale = null, $domain = 'messages', $useDB = null)

get($key, array $replace = array(), $locale = null, $useDB = null) 修改为 get($key, array $replace = array(), $locale = null, $fallback = true, $useDB = null)

发布版本 2.4.0

Laravel 5.4 兼容版本发布。没有更改 API,只有内部实现更改。

发布版本 2.3.3

Laravel 5.3 兼容版本发布。升级说明请见从 2.0, 2.1 升级到 2.3

现在使用 Laravel 5 授权 API 来处理所有 LTM 相关授权。

查找翻译现在更新了翻译键的源引用,并添加了新的键,同时清理动态键。需要发布和运行迁移来完成此更新 安装:发布和运行迁移

现在您可以查看翻译的源文件和行号引用。请参阅Web 界面:源引用

Screen Shot Show Source Refs

如果您是从 LTM 版本 2.0.x 升级,您需要

  1. 从您的应用程序中移除对 UserPrivilegeMapper 的依赖: 从服务提供者数组中移除对 UserPrivilegeMapper 的依赖从外观别名数组中移除对 UserPrivilegeMapper 的依赖
  2. 定义 LTM 使用的权限: 设置用户授权

按区域用户访问控制

实现方式从上次发布以来已更改,因为框架不支持在配置文件中使用闭包。现在使用权限来实现相同的功能。请参阅 启用按区域用户访问控制

默认情况下,此选项是关闭的,任何没有 ltm-admin-translations 权限的用户都可以修改任何区域。启用 user_locales_enabled 选项后,您可以控制用户允许修改的区域。默认情况下,所有用户的区域都是全部,除非您通过 Web UI 明确更改,请参阅 用户管理 或通过填充 ltm_user_locales 表来适当更改。

屏幕截图

Translation Manager Screenshot

* 此软件包最初是基于 Barry vd. Heuvel 的优秀 barryvdh 软件包。