This field has been merged to Custom Nova Fields package. Keep track of it for updates!
This field allows you to group together Nova Fields and merge their key => value pairs into unique JSON.
Run this command in your nova project:
composer require 64robots/nova-fields
Create a new Json field passing an array of Nova Fields as second param
use R64\NovaFields\JSON;
JSON::make('Content', [
Text::make('Name'),
Boolean::make('Active'),
Textarea::make('Description'),
]),
Attribute name can be passed as third param
use R64\NovaFields\JSON;
JSON::make('Content', [
Text::make('Name'),
Boolean::make('Active'),
Textarea::make('Description'),
], 'content_json'),
This converts to
{ "name": "Jane", "active": true, "description": "My Description" }
and is stored in the content_json
field.
In this example ensure that the content_json
field is being set to cast to object
on the underlying model instance.