ysfkaya/nova-dynamic-lang

该包已被废弃,不再维护。未建议替代包。

此工具通过动态方式提供对您语言文件的管理

v1.0.2 2018-11-15 06:51 UTC

This package is not auto-updated.

Last update: 2021-03-20 11:07:54 UTC


README

此工具通过动态方式为您提供Nova应用程序的语言文件管理

Dashboard index page

安装

您可以通过composer将此包安装到使用Nova的Laravel应用程序中

composer install ysfkaya/nova-dynamic-lang

您需要发布迁移和配置文件

php artisan vendor:publish --provider="Ysfkaya\NovaDynamicLang\NovaDynamicLangProvider"

您必须将工具注册到Nova

// in app/Providers/NovaServiceProvider.php

// ...

public function tools()
{
   return [
        // ...
        new \Ysfkaya\NovaDynamicLang\NovaDynamicLang,
    );
}

配置

  • 文件名: frontend

    我们将在您的语言文件中创建一个文件以保存您的字段。

  • 默认语言路径: null 仅json文件

    如果您想使用您自己的语言,请在此处设置路径。默认情况下将使用可用语言。

    示例Json数据

    [
         {
           "label": "A language label",
           "code": "A language code"
         }
    ]

选择一个存储以保存默认字段

规则(存储: array,json)
第一个索引 第二个索引 第三个索引
表单输入标签 表单输入值 调用短码

数组存储

数组存储为您提供快速简单地设置字段。您可以通过简单的规则设置字段。

// in config/nova-dynamic-lang.php

// ...

'array' => [
    'driver' => 'array',
    'fields' => [
        // ...
        ["Title","Title","title"],
        ["Description","Description","description"]
        // ...
    ],
],

JSON存储

JSON存储类似于数组存储,但必须定义JSON文件。

注意:"fields"键是必需的

// in config/nova-dynamic-lang.php

// ...

'json' => [
    'driver' => 'json',
    'path' =>   null // set a json file path,
],

在文件

{
    "fields":[
        ["Title","Title","title"],
        ["Description","Description","description"]
    ]
}

数据库存储

数据库存储通过动态方式管理您的字段。它允许您使用Nova资源。但在迁移文件中不应修改表列。

// in config/nova-dynamic-lang.php

// ...

'json' => [
    'driver' => 'database',
    'model' => \Ysfkaya\NovaDynamicLang\Models\LanguageSection::class // or you may use model instance of this model,
],

用法

您可以使用@lang blade指令通过应用程序语言显示文本

@lang('frontend.hello')