mohsen-tq / laravel-translatable
用于多语言模型的Laravel包
dev-main
2022-05-16 12:31 UTC
Requires
- php: >=7.2
- illuminate/contracts: 5.8.* || ^6.0 || ^7.0 || ^8.0
- illuminate/database: 5.8.* || ^6.0 || ^7.0 || ^8.0
- illuminate/support: 5.8.* || ^6.0 || ^7.0 || ^8.0
Requires (Dev)
- orchestra/testbench: 3.8.* || ^4.0 || ^5.0 || ^6.0
- phpunit/phpunit: ^8.0 || ^9.0
This package is auto-updated.
Last update: 2024-09-16 17:50:09 UTC
README
如果您想将模型翻译存储到数据库中,这个包是您的最佳选择。
这是一个用于可翻译模型的Laravel包。它的目标是简化检索和存储多语言模型实例的复杂性。使用此包,您将编写更少的代码,因为翻译会在您检索/保存实例时自动获取/保存。
完整文档可以在GitBook中找到。
安装
composer require mohsen-tq/laravel-translatable
快速示例
获取已翻译的属性
$post = Post::first(); echo $post->translate('en')->title; // My first post App::setLocale('en'); echo $post->title; // My first post App::setLocale('de'); echo $post->title; // Mein erster Post
获取带有已选择翻译数据的模型
$post->WithTranslation(['title','descriptin'])
保存已翻译的属性
$post = Post::first(); echo $post->translate('en')->title; // My first post $post->translate('en')->title = 'My cool post'; $post->save(); $post = Post::first(); echo $post->translate('en')->title; // My cool post
填充多个翻译
$data = [ 'author' => 'Gummibeer', 'en' => ['title' => 'My first post'], 'fr' => ['title' => 'Mon premier post'], ]; $post = Post::create($data); echo $post->translate('fr')->title; // Mon premier post
安全
如果您发现任何安全问题,请查看SECURITY以获取报告步骤。