dnj / laravel-localization
v1.0.1
2023-10-21 18:20 UTC
Requires
- php: ^8.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.11
- orchestra/testbench: ^8.0
- phpstan/phpstan: ^1.4.1
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-21 20:18:07 UTC
README
此包可以帮助您更轻松地管理和展示多语言Eloquent模型。
有一个核心概念:您有一个记录(如产品)并且每个记录都有一些本地化属性(如标题或描述)。因此,您为您的实体创建一个Eloquent模型
<?php namespace App\Models; use dnj\Localization\Contracts\ITranslatableModel; use dnj\Localization\Eloquent\HasTranslate; class Product extends Model implements ITranslatableModel { use HasTranslate; protected $table = "product"; }
然后为它的翻译创建另一个模型
<?php namespace App\Models; use dnj\Localization\Contracts\ITranslateModel; use dnj\Localization\Eloquent\IsTranslate; class ProductTranslate extends Model implements ITranslateModel { use IsTranslate; protected $table = "product_translate"; }
ITranslatableModel
此接口为您提供两种方法,您可以使用这些方法检索模型的翻译
为了简化事情,有一个HasTranslate特性,它会处理这些方法的实现。除此之外,此特性还有一些额外的方法
ITranslateModel
此模型很简单。仅包含一些获取器。
此外,还有一个IsTranslate特性,它为您实现了这些方法。
安全
如果您发现了关于安全性的错误,请通过security@dnj.co.ir发送邮件,而不是使用问题跟踪器。
许可协议
MIT许可协议(MIT)。请参阅许可文件以获取更多信息。