codtail/translation

优雅的Laravel模型翻译工具

dev-master 2021-01-15 16:15 UTC

This package is auto-updated.

Last update: 2024-09-16 00:06:00 UTC


README

本包为Laravel应用程序提供轻松顺畅的多语言模型翻译。

###安装

    composer require codtail/translation

######迁移

    $table->longText('translations');

######模型

    <?php
    
    namespace App;
    
    use Codtail\Translation\Translator;
    use Illuminate\Database\Eloquent\Model;
    
    class post extends Model
    {
         //....
        use Translator;
        
        public static $translated = ['title', 'content'];
         // ....
    }

######在config文件夹中的app.php中添加可用的本地化设置

   ...
   
   'app_locales' => ['en', 'es', 'ar'], 
   
   ...

###使用:当你创建新帖子时,包会自动填充帖子表中的翻译字段,然后翻译在更新时可用。

获取特定本地化

public function getTranslation(Post $post, $lang)
{
    ...
    
    $post->getTranslation($lang);
    
    ...
}

翻译到特定本地化

public function translate(Post $post, $lang, Request $request)
{
    ...
    
    $post->translate($lang, $request->all());
    
    ...   
}