motwreen/translation

Laravel 翻译的简单 GUI。

1.1.0 2020-11-01 12:10 UTC

This package is auto-updated.

Last update: 2024-09-29 05:09:03 UTC


README

Laravel 翻译的简单 GUI。

此包允许您控制 Laravel 基础设施中的 lang 文件。它还允许您翻译用户输入(模型或数据库列数据)。

安装

非常简单,只需在您的应用程序终端运行 composer require motwreen/translation

发布

如果您想编辑包视图,请在终端运行 php artisan vendor:publish --tag=motwreen-translation,您将在以下路径找到它: resources/views/vendor/translation

路由

您可以在 web.php 文件中将翻译路由包含到您的应用程序中。

$options = ['prefix'=>'admin/translation/','middleware'=>['web','auth:admin']];
Translations::routes($options);

迁移

要迁移数据库表,请运行 php artisan migrate

使用 GUI

  • 安装后,您可以通过 http://app-url.dev/translation 访问翻译 GUI。
  • 创建您的语言并对其进行翻译。
  • 您可以在 key 字段中使用(。)点语法来定义 lang 文件中的多维数组,如下所示:
level1.level2.level3.level4.etc

这将生成 lang 文件中的以下结果:

'level1' => [
        'level2' => [
            'level3' => [
                'level4' => 'etc',
            ],
        ],
    ],

数据库翻译

  • 要开始在您的模型中使用数据库翻译,请使用此特质 Motwreen\Translation\Traits\TranslatableTrait
  • 在您的模型类中定义一个受保护的 $translatable 数组,如下所示:
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Motwreen\Translation\Traits\TranslatableTrait;

class Category extends Model
{
    use TranslatableTrait;

    protected $translatable = ['name'];
}

在您的控制器中:

public function store(Request $request){
    $category = new App\Category;
    $category->name => ['en'=>'Test Name','du'=>'Miene name ist Test'];
    $category->description => ['en'=>'Test Description','du'=>'Miene name ist Description'];
    $category->save();
}