【问题标题】:Laravel Nova: Group form fields in columnsLaravel Nova:按列分组表单字段
【发布时间】:2019-05-17 22:52:31
【问题描述】:

如何在 Laravel Nova 中的表单字段上创建列?

例如,我试图将名字和姓氏分开,但不想将其放在两行。我更希望将它放在一起,但我找不到任何选择该选项的可能性。

有人知道如何解决吗?或者有一个包可以做到这一点?我已经搜索过了,但没有找到。

谢谢

更新: web agency 的人帮助我,创建了一个自定义字段。

【问题讨论】:

    标签: laravel laravel-nova


    【解决方案1】:

    这可以通过这个包来实现:https://github.com/64robots/nova-fields 以及在某些字段上定义的一些自定义 CSS。在我的情况下是这样的:

    ...
    ->labelClasses('w-full pt-4')
    ->wrapperClasses('flex flex-col w-1/3 float-left flex-1 px-4 pl-8')
    ...
    

    w-1/3 表示 33%,float-left 当然是 float: left。对前 2 个字段应用 float-left,w-1/3 树将产生 3 列。

    示例:

    例子:

    composer require 64robots/nova-fields

    public function fields(Request $request) {
        return [
            ID::make('ID', 'id')->sortable(),
    
            \R64\NovaFields\Select::make('Order type', 'order_type')->options([
                'equipment_rent'                   => 'Equipment Rental',
                'entertainment_and_equipment_rent' => 'Entertainment and Equipment Rental',
                'equipment_rent_inplace'           => 'Equipment Rental on Location',
            ]) ->labelClasses('w-full pt-4')
               ->wrapperClasses('flex flex-col w-1/3 float-left flex-1 px-4 pl-8')
               ->fieldClasses('w-full py-4'),
    
            \R64\NovaFields\Select::make('Region', 'region')->options([
                'country'                          => 'Vilniaus',
                'province'                         => 'Klaipėda',
            ]) ->labelClasses('w-full pt-4')
               ->wrapperClasses('flex flex-col w-1/3 float-left flex-1 px-4')
               ->fieldClasses('w-full py-4'),
    
            \R64\NovaFields\BelongsTo::make('Seller', 'seller', Seller::class)
               ->labelClasses('w-full pt-4')
               ->wrapperClasses('flex flex-col w-1/3 flex-1 px-4 pr-8')
               ->fieldClasses('w-full py-4'),
    
            Text::make('Test'),
            Text::make('Test another'),
        ];
    }
    

    【讨论】:

      【解决方案2】:

      目前这在 Laravel Nova 中是不可能的。

      【讨论】:

        猜你喜欢
        • 2019-04-29
        • 1970-01-01
        • 2019-12-01
        • 2020-11-27
        • 2019-05-19
        • 1970-01-01
        • 2019-12-15
        • 1970-01-01
        • 2019-07-28
        相关资源
        最近更新 更多