stepanenko3/nova-media-field

laravel-medilibrary 的 Laravel Nova 字段。


README

Latest Version on Packagist Total Downloads License

screenshot of field

描述

laravel-medilibrary 的 Laravel Nova 字段。

功能

  • 支持多张/单张图片
  • 根据集合自动检测多张图片
  • 显示验证错误
  • 在索引页显示多张图片
  • 带有媒体详情的模态框
  • 显示所有转换
  • 打开/下载/复制媒体 URL
  • 使用转换重新生成图片
  • 支持自定义属性

要求

  • php: >=8.0
  • laravel/nova: ^4.0
  • spatie/laravel-medilibrary: ^11.4

安装

# Install the package
composer require stepanenko3/nova-media-field

用法

use use Stepanenko3\NovaMediaField\Fields\Media;
...

Media::make(__('Image'), 'image'), // Single image. Auto detect from collection

Media::make(__('Images'), 'images'), // Multiple images. Auto detect from collection

// Validation rules

Media::make('Images', 'images')
    ->rules(['required', 'array', 'max:4'])
    ->singleMediaRules(['image', 'max:80']),


// Custom properties with validtion

Media::make('Images', 'images')
    ->customPropertiesFields([
        Boolean::make('Active', 'active')
            ->rules(['boolean']),

        Markdown::make('Description', 'description')
            ->rules(['max:1000']),
    ])


// Count images displayed on index

Media::make('Images', 'images')
    ->countOfImagesDisplayedOnIndex(2),


// Full example

Media::make('Images', 'images')
    ->customPropertiesFields([
        Boolean::make('Active', 'active')
            ->rules(['boolean']),

        Markdown::make('Description', 'description')
            ->rules(['max:1000']),
    ])
    ->countOfImagesDisplayedOnIndex(2)
    ->rules(['required', 'array', 'max:4'])
    ->singleMediaRules(['image', 'max:80']),

与文件管理器一起使用

安装 stepanenko3/nova-filemanager

compore require stepanenko3/nova-filemanager

注册服务提供者

// app/Providers/NovaServiceProvider.php

public function tools(): array
{
    return [
        new Stepanenko3\NovaFileManager\FileManagerTool,
    ];
}

使用文件管理器中的媒体字段

Media::make(__('Image'), 'image')
    ->fileManager(),

截图

screenshot of field screenshot of field screenshot of field screenshot of field screenshot of field screenshot of field

致谢

贡献

感谢您考虑为此包做出贡献!请创建一个带有您贡献的 pull request,并详细说明您提出的更改。

许可证

此软件包是开源软件,根据 MIT 许可证 许可。