okipa/laravel-medialibrary-extension

该包已被废弃,不再维护。作者建议使用 https://github.com/Okipa/laravel-medialibrary-ext 包代替。

为 https://github.com/spatie/laravel-medialibrary 包提供的额外功能。

dev-master 2019-08-27 16:41 UTC

This package is auto-updated.

Last update: 2019-08-27 16:41:59 UTC


README

Source Code Latest Version Total Downloads License: MIT Build Status Code Coverage Scrutinizer Code Quality

本包为 spatie/laravel-medialibrary 包提供额外功能。
基础包文档在此: https://docs.spatie.be/laravel-medialibrary/v7

⚠️包已废弃 => 已由 https://github.com/Okipa/laravel-medialibrary-ext 替换⚠️

安装

您可以通过 composer 安装此包

composer require okipa/laravel-medialibrary-extension:^7.0.0

如果您的项目尚未安装 spatie/laravel-medialibrary,扩展包将自动安装它。
此包遵循 spatie/laravel-medialibrary 版本控制方案。

额外功能

集合 MIME 类型约束设置

添加了 acceptsMimeTypes(array $mimeTypes): MediaCollection 方法,可以与媒体集合一起使用。
声明后,MIME 类型约束将被用来触发 FileUnacceptableForCollection 异常(如果不遵守),并且也用于生成验证约束和说明(见下文)。

// example
public function registerMediaCollections()
{
    $this->addMediaCollection('images')->acceptsFile(function (File $file) {
        return $file->size <= 30000;
    })->acceptsMimeTypes(['image/jpeg', 'image/png']);
}

集合验证约束规则生成

添加了 validationConstraints(string $collectionName): string 方法,可以与使用 HasMediaTrait 的模型一起使用。

// in your user storing form request for example
public function rules()
{
    return [
        'avatar' => (new User)->validationConstraints('avatar'),
        // your other validation rules
    ];
}

渲染示例: dimensions:min_width=60,min_height=20|mimetypes:image/jpeg,image/png

集合验证约束说明生成

添加了 constraintsLegend(string $collectionName): string 方法,可以与使用 HasMediaTrait 的模型一起使用。

// in your HTML form
<label for="avatar">Choose a profile picture :</label>
<input type=" id="avatar" name="avatar" value="{{ $avatarFileName }}">
<small>{{ (new User)->constraintsLegend('avatar') }}</small>

渲染示例: 最小宽度:150 px / 最小高度:70 px。接受的 MIME 类型:image/jpeg, image/png。

有用的额外公共方法

以下方法也可以单独与使用 HasMediaTrait 的模型一起使用

  • dimensionValidationConstraints(string $collectionName): string:从名称获取集合维度验证约束字符串。
  • mimeTypesValidationConstraints(string $collectionName): string:从名称获取集合 MIME 类型约束验证字符串。
  • dimensionsLegend($collectionName): string:从名称获取集合维度约束说明字符串。
  • mimeTypesLegend($collectionName): string:从名称获取集合 MIME 类型约束说明字符串。
  • collectionMaxSizes(string $collectionName): array:从名称获取注册的集合最大宽度和最大高度。
  • getCollection(string $collectionName): ?MediaCollection:从名称获取媒体集合对象。
  • getConversions(string $collectionName): array : 从媒体集合名称获取声明的转换。
  • mayContainsImages(MediaCollection $collection): bool : 检查给定的媒体集合是否包含其声明的接受 MIME 类型中的图像。如果没有声明接受 MIME 类型,则认为该集合可能包含图像。

测试

composer test

更新日志

有关最近更改的更多信息,请参阅更新日志

贡献

有关详细信息,请参阅贡献指南

鸣谢

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅许可证文件