rslanzi/nova-translatable

A Laravel Nova 字段,用于 astrotomic/laravel-translatable。

0.2.3 2021-03-31 22:55 UTC

This package is auto-updated.

Last update: 2024-09-29 05:49:48 UTC


README

Laravel Nova 可翻译

Latest Version on Packagist Packagist StyleCI

Laravel Nova 字段允许您使用 astrotomic/laravel-translatable 来管理翻译字段。

要求

laravel/nova: ^2.9 || ^3.0
astrotomic/laravel-translatable: ^11.0
waynestate/nova-ckeditor4-field: ^0.6.0

功能

  • 支持几乎所有 Nova 字段
  • 自动支持默认验证
  • 易于实现,代码改动最少(在添加 astrotomic/laravel-translatable 支持后)
  • 区域标签以在不同的区域值之间切换相同字段

支持的字段

  • 代码
  • 计数文本(带最大字符数和警告阈值)
  • CKEditor
  • JSON
  • Sluggable
  • 文本(也支持单行)
  • 文本区域
  • Trix

安装

首先,设置astrotomic/laravel-translatable

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

# Install nova-translatable
composer require rslanzi/nova-translatable

# Publish configuration (optional, but useful for setting default locales)
php artisan vendor:publish --tag="nova-translatable-config"

用法

文本字段

单行文本字段

NovaTranslatable::make('Title')
    ->singleLine()

文本区域字段

多行文本字段

NovaTranslatable::make('Text')
    ->hideFromIndex()

计数文本字段

带字符计数的文本字段

NovaTranslatable::make('Title')
    ->singleLine()
    ->counted()

超过最大字符数阈值。

超过阈值,计数器变为红色。

NovaTranslatable::make('Title')
    ->singleLine()
    ->counted()
    ->maxChars(60)
    ->warningAt(50),

超过最大字符数和警告阈值。

超过警告阈值,计数器变为橙色,超过最大字符数阈值,计数器变为红色。

NovaTranslatable::make('Title')
    ->singleLine()
    ->counted()
    ->maxChars(60)
    ->warningAt(50),

CKEditor 字段

CKEditor WYSIWYG 编辑器。用于管理 HTML 字段。

NovaTranslatable::make('Text')
    ->ckeditor()

Trix 字段

Trix 字段

NovaTranslatable::make('Text')
    ->trix()

Sluggable 字段

根据其他字段自动填充 slug 字段。在此例中是标题。

NovaTranslatable::make('Title')
    ->sluggable('Slug'),
NovaTranslatableSlug::make('Slug')
    ->hideFromIndex(),

代码字段

代码字段。使用语法高亮的文本区域。

NovaTranslatable::make('Text')
    ->code()

自定义语言的代码字段

代码字段。使用语法高亮的文本区域。

NovaTranslatable::make('Text')
    ->code()
    ->language('php')

代码字段当前支持的语言包括: dockerfile, javascript, markdown, nginx, php, ruby, sass, shell, vue, xml, yaml

JSON 字段

NovaTranslatable::make('Text')
    ->json()

贡献

欢迎提交拉取请求。对于主要更改,请先打开一个问题来讨论您想要更改的内容。

请确保根据需要更新测试。

支持开发

你喜欢这个项目吗?通过捐赠支持它

安全漏洞

如果您在 Nova Translatable 中发现安全漏洞,请发送电子邮件至 rslanzi@gmail.com。所有安全漏洞都将得到及时解决。

许可证

Nova Translatable 是在 MIT 许可证 项下分发的免费软件。