outl1ne / nova-locale-manager

Laravel Nova 管理本地化的工具。

3.0.1 2022-07-18 06:18 UTC

This package is auto-updated.

Last update: 2024-09-06 08:18:49 UTC


README

Latest Version on Packagist Total Downloads

Laravel Nova 包允许您管理简单本地化。

功能

  • 创建本地化(名称和缩写)
  • 本地化状态管理(活动,默认)

要求

  • php: >=8.0
  • laravel/nova: ^4.0

安装

通过 Composer 在 Laravel Nova 项目中安装此包

# Install nova-locale-manager
composer require outl1ne/nova-locale-manager

# Run migrations
php artisan migrate

用法

nova_get_locales($activeOnly = false)

参数 $activeOnly 决定是否只返回 active 本地化或所有。

slug => name 映射返回本地化。

[
    'en' => 'English',
    'et' => 'Estonian',
]

nova_get_locales_full($activeOnly = false)

参数 $activeOnly 决定是否只返回 active 本地化或所有。

返回本地化及其所有数据。

[
    [
        'name' => 'English',
        'slug' => 'en',
        'active' => false,
        'default' => false,
    ],
    [
        'name' => 'Estonian',
        'slug' => 'et',
        'active' => true,
        'default' => true,
    ],
]

nova_get_default_locale()

返回默认本地化的完整数据。

[
    'name' => 'English',
    'slug' => 'en',
    'active' => false,
    'default' => false,
],

nova_get_default_locale_slug()

返回默认本地化的缩写。

'en'

处理本地化删除

您可以使用 NovaLocaleManager::deleteCallback() 函数注册当本地化被删除时的回调。您可以在 NovaServiceProviderboot() 函数中注册回调。

示例

// in app/Providers/NovaServiceProvider.php

public function boot()
{
    \Outl1ne\NovaLocaleManager\NovaLocaleManager::deleteCallback(function ($locale) {
        // $locale is the Locale model
        // Locale ID: $locale->id
        // Locale slug: $locale->locale
        // Locale name: $locale->name
    });
}

配置

可以使用以下命令发布配置文件

php artisan vendor:publish --provider="Outl1ne\NovaLocaleManager\NovaLocaleManagerServiceProvider" --tag="config"

致谢

许可

Nova Locale Manager 是开源软件,采用 MIT 许可证