marcusyan/laravel-translation-manager

增强型Laravel翻译管理器

6.0.9 2020-11-19 16:22 UTC

README

GitQ

composer require cvaize/laravel-translation-manager

// config/app.php
'providers' => [
        //...
        Vsch\TranslationManager\TranslationServiceProvider::class, // 1!!!
        Vsch\TranslationManager\ManagerServiceProvider::class, // 2!!!
    ],

本包用于通过Yandex翻译API提供翻译辅助,舒适地管理、查看、编辑和翻译Laravel语言文件。它增加了大量实用功能,增强了Laravel翻译器系统。功能

⚠️ 仅支持MySQL和PostgreSQL数据库连接。添加其他数据库只需要根据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 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 软件包。