mevisoft / laravel-translatable
Laravel多语言模型包
13.0.0
2022-08-07 02:21 UTC
Requires
- php: ^8.0
- illuminate/contracts: ^8.0 || ^9.0
- illuminate/database: ^8.0 || ^9.0
- illuminate/support: ^8.0 || ^9.0
Requires (Dev)
- laravel/legacy-factories: ^1.0.4
- mockery/mockery: ^1.3.3
- orchestra/testbench: ^6.0 || ^7.0
- phpunit/phpunit: ^9.0
README
如果您想将模型的翻译存储到数据库中,此包适合您。
这是一个用于可翻译模型的Laravel包。其目标是简化检索和存储多语言模型实例的复杂性。使用此包,您将编写更少的代码,因为翻译将在您检索/保存实例时获取/保存。
完整文档可以在GitBook找到。
安装
composer require mevisoft/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 = 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
教程
变更日志
请参阅CHANGELOG以获取最近更改的更多信息。
贡献
请参阅CONTRIBUTING以获取详细信息。您也可能对CODE OF CONDUCT感兴趣。
安全
如果您发现任何安全问题,请检查SECURITY以了解报告步骤。
致谢
- Tom Witkowski 当前维护者
- Dimitrios Savvopoulos 原始作者
- David Llop 重构测试套件
- Caneco 艺术作品
- 所有贡献者
版本
免费版
您可以使用此包,但如果它进入您的生产环境,我将非常感激您为世界买一棵树。
众所周知,应对气候危机并保持气温不升高超过1.5摄氏度最有效的工具之一是植树。如果您为我的森林做出贡献,您将为当地家庭创造就业机会并恢复野生动物栖息地。
您可以在offset.earth/treeware购买树木。
有关Treeware的更多信息,请访问treeware.earth