arthedain/translation

一个 Laravel Nova 翻译工具。

1.0.0 2021-02-24 12:52 UTC

This package is auto-updated.

Last update: 2024-09-24 20:26:25 UTC


README

composer require arthedain/translation

然后将其包含在 NovaServiceProvider 中

public function tools()
{
    return [
        new Translation,
    ];
}
发布迁移
php artisan vendor:publish --provider="Arthedain\Translation\TranslationServiceProvider" --tag="migration"

在迁移中,您可以更改或添加字段,但不能更改 custom_properties 字段

发布模型
php artisan vendor:publish --provider="Arthedain\Translation\TranslationServiceProvider" --tag="model"
发布配置
php artisan vendor:publish --provider="Arthedain\Translation\TranslationServiceProvider" --tag="config"
发布编辑器皮肤
php artisan vendor:publish --provider="Arthedain\Translation\TranslationServiceProvider" --tag="tinymce"

如何使用

\App\Models\Translation::locale('some text to add in db', ['tab' => 'All', 'editor' => false, 'key' => false]);

tab 可选的 字符串 参数,创建字段组。默认为 All

可以在本地化文件中更改 tab 参数的值

"All": "Все"

editor 可选的 布尔 参数,设置是否使用可视化编辑器

在视图中调用特质中的方法时,使用自动加载或其他方法

// composer.json

"autoload": {
    "files": [
        //path to file
    ],
},

// file
<?

function locale(string $name, array $parameters = []): string{
    return \App\Models\Translation::locale($name, $parameters);
}

// view

{{ locale('some text', ['tab' => 'Index']) }}

资源字段

在资源调用中

use Arthedain\Translation\TranslationField;

//

TranslationField::make('Translations')->tabName('Index'),
本地化

转到 /lang/vendor/nova/en.json

"Translation": "Translation",
"Update": "Update",
"Translations updated successfully": "Переводы успешно обновлены",
"Show default value": "Show default value",
"Show delete button": "Show delete button",
"Saved successfully": "Saved successfully",
"Deleted successfully": "Deleted successfully",
"Error": "Error",