Laravel Nova 本地化

2023-02-16 17:09 更新

概述

使用 Laravel 的 本地化服務(wù) 可以完全本地化 Nova 。 當(dāng)你使用 nova:install 安裝命令后,你的項(xiàng)目目錄里將包含 resources/lang/vendor/nova 的翻譯目錄。

在該目錄中,你可以自定義 en.json 文件或者使用自定義的語言創(chuàng)建新的 JSON 轉(zhuǎn)換文件。 此外,在 en 目錄還包含 Nova 使用的一些額外驗(yàn)證。

資源

你可以通過重寫覆蓋掉 resources 類上的 label and singularLabel 方法來實(shí)現(xiàn)本地化資源名稱:

/**
 * 獲取資源可以顯示的標(biāo)簽.
 *
 * @return string
 */
public static function label()
{
    return __('Posts');
}

/**
 * 獲取資源可以顯示的單標(biāo)簽.
 *
 * @return string
 */
public static function singularLabel()
{
    return __('Post');
}

字段

在資源中使用字段時(shí),字段的名稱可以通過第一個(gè)參數(shù)自定義。例如,你可以像下面這樣自定義郵箱地址:

use Laravel\Nova\Fields\Text;

Text::make(__('Email Address'), 'email_address')

關(guān)系

關(guān)系的名稱可以在其定義時(shí)通過第一個(gè)參數(shù)來實(shí)現(xiàn)自定義。第二個(gè)和第三個(gè)參數(shù)分別是關(guān)系的方法名和被關(guān)聯(lián)的 Nova 資源:

use App\Nova\Post;
use Laravel\Nova\Fields\HasMany;

HasMany::make(__('Posts'), 'posts', Post::class)

此外,你還可以覆蓋資源的 label 和 singularLabel 方法:

/**
 * 獲取資源可以顯示的標(biāo)簽。
 *
 * @return string
 */
public static function label()
{
    return __('Posts');
}

/**
 * 獲取資源可以顯示的單標(biāo)簽。
 *
 * @return string
 */
public static function singularLabel()
{
    return __('Post');
}

過濾器

過濾器的名稱可以通過覆蓋類的 name 方法來實(shí)現(xiàn)本地化:

/**
 * 獲取過濾器的顯示名稱。
 *
 * @return string
 */
public function name()
{
    return __('Admin Users');
}

鏡頭

鏡頭的名稱可以通過覆蓋類的 name 方法來實(shí)現(xiàn)本地化:

/**
 * 獲取鏡頭的顯示名稱。
 *
 * @return string
 */
public function name()
{
    return __('Most Valuable Users');
}

動(dòng)作

動(dòng)作的名稱可以通過覆蓋類的 name 方法來實(shí)現(xiàn)本地化:

/**
 * 獲取動(dòng)作顯示的名稱。
 *
 * @return string
 */
public function name()
{
    return __('Email Account Profile');
}

度量

度量的名稱可以通過覆蓋類的 name 方法來實(shí)現(xiàn)本地化:

/**
 * 獲取度量的顯示名稱。
 *
 * @return string
 */
public function name()
{
    return __('Total Users');
}


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)