ibrhaim13 / mongodb-translate
为 Laravel 7 及以上版本使用的基于 MongoDB 的静态文本翻译包
v1.0.2
2022-05-30 07:03 UTC
Requires
- php: ^7.3|^8.0
- jenssegers/mongodb: ^3.9
- laravel/framework: ^8.0|^9.0
- torann/geoip: ^1.0|^3.0
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.5
README
ibrhaim13/mdb-translate 是一个使用 MongoDB 进行静态文本翻译的 Laravel 翻译包,使用简单、动态且令人愉悦。
官方文档
安装(Laravel ^8.0, ^9.0 )
通过 composer 安装
composer require ibrhaim13/translate
发布包
将发布包组件 translate13(配置文件)、迁移文件、视图
php artisan vendor:publish --force --tag=translate13
依赖
你应该安装 laravel 中的一个启动套件 auth 包,如 auth/ui 或 laravel-breeze 或其他,因为此功能是为管理员提供的。我们也依赖于 laravel 视图 app 布局,如果你想要自定义视图,你完全不需要它。
基本配置包
运行迁移
php artisan migrate
为 web 中间件组添加中间件,以添加本地到 URL 路径
# app/Http/Kernel.php protected $middlewareGroups = [ 'web' => [ ..., Ibrhaim13\Translate\Http\Middleware\Web\Localization::class, ... ]
当在 URL 中更改本地设置时,将更改应用中的本地设置。
通过应用程序的 Route 服务提供者添加路由前缀
# app/Providers/RouteServiceProvider.php # boot function inside route callback funcation add ->prefix(Localization::routePrefix()) Route::middleware('web')->prefix(Localization::routePrefix()) ->group(base_path('routes/web.php'));
高级配置包
你可以自定义路由、前缀、添加新语言以及添加你喜欢的中间件,你应该将翻译页面路由添加到应用的导航栏中,这样你就可以访问页面。你可以通过扩展模型并重写组来添加新的翻译组
# app/Models/YourTranslateModelExtendFromPackageModel.php public static array $groups = [ 'str_public', 'str_admin', //here add your new group as you like ];
如何使用
设置完配置后,你可以访问翻译页面以添加新键,你可以在管理员面板中将其翻译
#first segment is a group name #secand segment is translated key __('str_public.key name');
默认有两个组名 str_public
、str_admin
,添加键后,在打开翻译管理员页面之前,你必须打开包含此键的页面,这样 Laravel 应用程序才会加载
访问翻译管理面板页面
http://yourdomain.com/en/translate
然后点击生成按钮生成静态翻译文件,编辑翻译后 #注意:你的服务器需要有创建翻译文件的权限
安全漏洞
请通过电子邮件联系我们 i.musabah92@gmail.com
许可证
ibrhaim13/translate 是开源软件,许可协议为 MIT 许可证。