Laravel Nova 本地化
2023-02-16 17:09 更新
概述
使用 Laravel 的 本地化服务 可以完全本地化 Nova 。 当你使用 nova:install
安装命令后,你的项目目录里将包含 resources/lang/vendor/nova
的翻译目录。
在该目录中,你可以自定义 en.json
文件或者使用自定义的语言创建新的 JSON 转换文件。 此外,在 en
目录还包含 Nova 使用的一些额外验证。
资源
你可以通过重写覆盖掉 resources 类上的 label
and singularLabel
方法来实现本地化资源名称:
/**
* 获取资源可以显示的标签.
*
* @return string
*/
public static function label()
{
return __('Posts');
}
/**
* 获取资源可以显示的单标签.
*
* @return string
*/
public static function singularLabel()
{
return __('Post');
}
字段
在资源中使用字段时,字段的名称可以通过第一个参数自定义。例如,你可以像下面这样自定义邮箱地址:
use Laravel\Nova\Fields\Text;
Text::make(__('Email Address'), 'email_address')
关系
关系的名称可以在其定义时通过第一个参数来实现自定义。第二个和第三个参数分别是关系的方法名和被关联的 Nova 资源:
use App\Nova\Post;
use Laravel\Nova\Fields\HasMany;
HasMany::make(__('Posts'), 'posts', Post::class)
此外,你还可以覆盖资源的 label
和 singularLabel
方法:
/**
* 获取资源可以显示的标签。
*
* @return string
*/
public static function label()
{
return __('Posts');
}
/**
* 获取资源可以显示的单标签。
*
* @return string
*/
public static function singularLabel()
{
return __('Post');
}
过滤器
过滤器的名称可以通过覆盖类的 name
方法来实现本地化:
/**
* 获取过滤器的显示名称。
*
* @return string
*/
public function name()
{
return __('Admin Users');
}
镜头
镜头的名称可以通过覆盖类的 name
方法来实现本地化:
/**
* 获取镜头的显示名称。
*
* @return string
*/
public function name()
{
return __('Most Valuable Users');
}
动作
动作的名称可以通过覆盖类的 name
方法来实现本地化:
/**
* 获取动作显示的名称。
*
* @return string
*/
public function name()
{
return __('Email Account Profile');
}
度量
度量的名称可以通过覆盖类的 name
方法来实现本地化:
/**
* 获取度量的显示名称。
*
* @return string
*/
public function name()
{
return __('Total Users');
}
以上内容是否对您有帮助:
更多建议: