blendbyte/nova-items-field

Nova 字段用于处理数组列

安装数: 204,152

依赖项: 0

建议者: 0

安全: 0

星标: 12

关注者: 1

分支: 32

开放问题: 1

语言:Vue

1.3.4 2024-03-11 03:38 UTC

This package is auto-updated.

Last update: 2024-09-11 04:49:57 UTC


README

Laravel Nova 数组项目字段,具有排序、验证和许多 显示选项

nova-array-input-field

安装

composer require blendbyte/nova-items-field

用法

use NovaItemsField\Items;
function fields() {
    return [
        Items::make('Emails')
    ]
}

并确保在你的 eloquent 模型中将属性转换为数组

public $casts = [
    'emails' => 'array'
];

验证

使用 Laravel 内置的 数组验证

Items::make('Emails')->rules([
     null => 'required|min:2'
     '*' => 'email|min:10',
]),

在这种情况下,如果数组中至少没有2个项目,或者每个项目不是一个有效的电子邮件地址或长度少于10个字符,将会产生错误。

你可能更喜欢使用显式的属性名称,行为与之前完全相同

Items::make('Emails', 'user_email')->rules([
    'user_email' => 'required|min:2',
    'user_email.*' => 'email|min:10',
]),

数组处理

通过创建 观察者 来使用数组执行其他操作

function saving($user)
{
    foreach($user->emails as $email)
    {
        //
    }
}

替换项目 Vue 组件

以下是一个简短的说明,介绍如何自定义 Vue 项目 - 查看

附加选项