当前位置: 首页> 文旅> 艺术 > b2b是什么_汽车品牌推广策划方案_百度搜索引擎服务项目_建站 seo课程

b2b是什么_汽车品牌推广策划方案_百度搜索引擎服务项目_建站 seo课程

时间:2025/8/26 21:58:22来源:https://blog.csdn.net/weixin_36292503/article/details/142779215 浏览次数:0次
b2b是什么_汽车品牌推广策划方案_百度搜索引擎服务项目_建站 seo课程

演示

在这里插入图片描述

一、安装拓展包outerweb/filament-translatable-fields

composer require outerweb/filament-translatable-fields

配置模型

该套件包含一个名为 HasTranslations 的特性,用于使 Eloquent 模型具备多语言功能。翻译值以 JSON 格式存储,并不需要额外的表来保存这些翻译。

<?phpnamespace App\Models;use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Spatie\Translatable\HasTranslations;class Article extends Model
{use HasFactory,HasTranslations;protected $casts = ['id' => 'integer','category_id' => 'integer',];//数据库中 相关字段需要配置 json 或者 text  数据类型public array $translatable = ['title','desc','content'];public function category(): BelongsTo{return $this->belongsTo(Category::class);}
}

在这里插入图片描述

  1. 将插件添加到所需的 Filament 面板中
use Outerweb\FilamentTranslatableFields\Filament\Plugins\FilamentTranslatableFieldsPlugin;class FilamentPanelProvider extends PanelProvider
{public function panel(Panel $panel): Panel{return $panel// ...->plugins([FilamentTranslatableFieldsPlugin::make(),]);}
}
  1. 您可以设置指定支持的区域:
use Outerweb\FilamentTranslatableFields\Filament\Plugins\FilamentTranslatableFieldsPlugin;class FilamentPanelProvider extends PanelProvider
{public function panel(Panel $panel): Panel{return $panel// ...->plugins([FilamentTranslatableFieldsPlugin::make()->supportedLocales(['zh_CN' => '中文','en' => 'English',]),]);}
}
  1. 默认情况下,如果未指定 locales,那么软件包将使用 app.locale 中的默认配置
  • 用法

你可以将 ->translatable() 添加到任何你想翻译的字段。

use Filament\Forms\Components\TextInput;TextInput::make('title')->label('标题')->translatable(),
  • 动态禁用翻译

如果要动态禁用翻译,可以将 ->translatable() 函数的第一个参数设置为 truefalse

use Filament\Forms\Components\TextInput;TextInput::make('title')->label('标题')->translatable(false),
  • 覆盖区域设置

如果要覆盖特定字段上的区域设置,可以通过 ->translatable() 函数的第二个参数来设置区域。

use Filament\Forms\Components\TextInput;TextInput::make('title')->label('标题')->translatable(true, ['en' => 'English', 'nl' => 'Dutch', 'fr' => 'French']),
  • 设置指定区域的验证规则

您可以使用 ->translatable() 函数的第三个参数来添加指定区域的验证规则

use Filament\Forms\Components\TextInput;TextInput::make('name')->label('Name')->translatable(true, null, ['en' => ['required', 'string', 'max:255'],'nl' => ['nullable', 'string', 'max:255'],]);

注意:
此包outerweb/filament-translatable-fields将用组件 Filament\Forms\Components\Tabs 替换原始字段。此组件将呈现每个 locale 的原始字段。

在调用 ->translatable() 之前添加的所有链式方法都使用原始字段。
在调用 ->translatable() 之后添加的所有链接方法都使用Filament\Forms\Components\Tabs组件。

所有功能具体详细使用文档,请点击此链接查看

关键字:b2b是什么_汽车品牌推广策划方案_百度搜索引擎服务项目_建站 seo课程

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: