Nova field to handle array columns

Installs: 526 015

Dependents: 3

Suggesters: 0

Security: 0

Stars: 111

Watchers: 1

Forks: 28

Open Issues: 13


0.6 2020-09-16 21:22 UTC

This package is auto-updated.

Last update: 2022-11-29 02:56:42 UTC


Latest Version on Github Total Downloads Twitter Follow

Laravel Nova array items field with sorting, validation & many display options



composer require dillingham/nova-items-field


use NovaItemsField\Items;
function fields() {
    return [

and be sure to cast the property as an array on your eloquent model

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


Use Laravel's built in array validation

    'emails.*' => 'email|min:10',

Manually setting the attribute may be needed in some cases.

Items::make('Long Text', 'attribute')->rules([
    'attribute.*' => 'email|min:10',

Array processing

Use the array to perform other actions by making an observer

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

Replace item vue component

Here's a brief walkthrough to customize the vue item - view

Additional options

function description default
->max(number) limit number of items allowed false
->draggable() turn on drag/drop sorting false
->fullWidth() increase the width of field area false
->maxHeight(pixel) limit the height of the list false
->listFirst() move add new to the bottom false
->inputType(text) text, date, etc "text"
->placeholder($value) the new item input text "Add a new item"
->deleteButtonValue($value) value for delete button "x"
->createButtonValue($value) value for create button "Add"
->hideCreateButton() hide the "add" button false


Hi 👋, Im Brian Dillingham, creator of this Nova package and others

Hope you find it useful. Feel free to reach out with feedback.

Follow me on twitter: @im_brian_d