outl1ne / nova-locale-manager
Laravel Nova 管理本地化的工具。
    3.0.1
    2022-07-18 06:18 UTC
Requires
- php: >=8.0.0
- doctrine/dbal: ^2.13.3|^3.1.4
- laravel/framework: ^9.0
- laravel/nova: ~4.0
- spatie/once: ^3.0
README
此 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() 函数注册当本地化被删除时的回调。您可以在 NovaServiceProvider 的 boot() 函数中注册回调。
示例
// 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 许可证。