板条 / laravel-mediable
一个用于将媒体文件轻松上传和附加到Laravel模型中的包
6.1.3
2024-09-02 01:19 UTC
Requires
- php: >=8.1.0
- ext-fileinfo: *
- guzzlehttp/guzzle: ^7.4.1
- guzzlehttp/psr7: ^2.6
- illuminate/database: ^10.0|^11.0
- illuminate/filesystem: ^10.0|^11.0
- illuminate/support: ^10.0|^11.0
- intervention/image: ^2.7.1|^3.0
- league/flysystem: ^3.0.4
- spatie/image-optimizer: ^1.7
- symfony/http-foundation: ^6.0.3|^7.0
- symfony/mime: ^6.0|^7.0
Requires (Dev)
- aws/aws-sdk-php: ^3.166.2
- doctrine/dbal: ^2.11|^3.0
- guzzlehttp/promises: ^1.5.1
- laravel/legacy-factories: ^1.3.0
- league/flysystem-aws-s3-v3: ^3.0
- mockery/mockery: ^1.4.2
- orchestra/testbench: ^8.0|^9.0
- php-coveralls/php-coveralls: ^2.5.2
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.0
- vlucas/phpdotenv: ^5.4.1
Suggests
- intervention/image-laravel: Laravel bindings for the intervention/image package used for image manipulation
- dev-master
- v6.x-dev
- 6.1.3
- 6.1.2
- 6.1.1
- 6.1.0
- 6.0.5
- 6.0.4
- 6.0.3
- 6.0.2
- 6.0.1
- 6.0.0
- 5.9.1
- 5.9.0
- 5.8.0
- 5.7.0
- 5.6.0
- 5.5.0
- 5.4.1
- 5.4.0
- 5.3.1
- 5.2.1
- 5.2.0
- 5.1.1
- 5.1.0
- 5.0.7
- 5.0.6
- 5.0.5
- 5.0.4
- 5.0.3
- 5.0.2
- 5.0.1
- 5.0.0
- 4.4.2
- 4.4.1
- 4.4.0
- 4.3.2
- 4.3.1
- 4.3.0
- 4.2.3
- 4.2.2
- 4.2.1
- 4.2.0
- 4.1.0
- 4.0.1
- 4.0.0
- 3.0.1
- 3.0.0
- 2.9.0
- 2.8.2
- 2.8.1
- 2.8.0
- 2.7.3
- 2.7.2
- 2.7.1
- 2.7.0
- 2.6.2
- 2.6.1
- 2.6.0
- 2.5.0
- 2.4.8
- 2.4.7
- 2.4.6
- 2.4.5
- 2.4.4
- 2.4.3
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.0
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.0
- 2.0.0
- 1.1.1
- 1.1.0
- 1.0.1
- 1.0.0
- 0.3.0
- 0.2.0
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-uploaded-mime-type
- dev-laravel-9-temporary-url
- dev-support-8.1
- dev-update-changelog
- dev-source-adapter-url-path-parsing
- dev-callback-ordering
- dev-analysis-z4Db9N
- dev-develop
This package is auto-updated.
Last update: 2024-09-02 01:20:53 UTC
README
Laravel-Mediable是一个用于将媒体文件轻松上传和附加到Laravel模型中的包。
特性
- 基于文件系统的方法易于配置,可以允许配置任意数量的上传目录,具有不同的可访问性。可以轻松通过MIME类型、扩展名和/或聚合类型(例如
image
,用于JPEG、PNG或GIF)来限制上传。 - 多对多多态关系允许将任意数量的媒体分配给任意数量的其他模型,而无需修改它们的模式。
- 使用标签将媒体附加到模型,以便根据特定目的设置和检索媒体,例如
'thumbnail'
、'featured image'
、'gallery'
或'download'
。 - 集成了对图像的处理支持,以创建不同使用场景的变体。
示例用法
将文件上传到服务器,并将其放置在文件系统磁盘上的“uploads”目录中。这将创建一个媒体记录,可以用于引用该文件。
$media = MediaUploader::fromSource($request->file('thumb')) ->toDestination('uploads', 'blog/thumbnails') ->upload();
将媒体与另一个eloquent模型通过一个或多个定义关系的标签进行关联。
$post = Post::create($this->request->input()); $post->attachMedia($media, ['thumbnail']);
通过其标签检索媒体。
$post->getMedia('thumbnail')->first()->getUrl();
安装
使用composer将包添加到您的Laravel应用程序中
composer require plank/laravel-mediable
在config/app.php
中注册包的服务提供者。在Laravel 5.5及更高版本中,如果启用了包自动发现,则可以跳过此步骤。
'providers' => [ ... Plank\Mediable\MediableServiceProvider::class, ... ];
该包包含一个用于图像上传的Facade,您可以选择将其也注册。在Laravel 5.5及更高版本中,如果启用了包自动发现,则可以跳过此步骤。
'aliases' => [ ... 'MediaUploader' => Plank\Mediable\MediaUploaderFacade::class, ... ]
使用artisan发布包的配置文件(config/mediable.php
)。
php artisan vendor:publish --provider="Plank\Mediable\MediableServiceProvider"
运行迁移以将所需的表添加到数据库中。
php artisan migrate
文档
在此处阅读文档。
许可证
此包根据MIT许可证(MIT)发布。
关于板条
板条是一家总部位于加拿大蒙特利尔的网络开发公司。