自定义 Laravel Nova 多级 Select

以前的后台使用的是 laravel-admin,可选字段非常丰富。现在换成了 Nova,可选字段少的可怜。连一些最基本的都没有,比例多级省市下拉选择。不过 Nova 提供自定义字段的功能,网上也有很多选择,但是在多级选项这块一直没有很满意的第三方扩展,下了几个试试总是有些不方便的地方。后来决定干脆自己弄一个,同时也能学习一下自定义字段的过程。欢迎大家下载使用。

安装#

composer require alvinhu/nova-child-select

使用#

parent 父级字段
options 闭包方法

举例#

use Alvinhu\ChildSelect\ChildSelect;

public function fields(Request $request)
    {
        return [

            ID::make()->sortable(),

            Select::make('Country')
                ->options(Country::all()->mapWithKeys(function ($country) {
                    return [$country->id => $country->name];
                }))
                ->rules('required'),

            ChildSelect::make('City')
                ->parent('country')
                ->options(function ($value) { 
                    City::whereCountry($value)->get()->mapWithKeys(function ($city) {
                        return [$city->id => $city->name];
                    });
                })
                ->rules('required'),
        ];
    }
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。