dimakornev13 / laravel-medialibrary
将文件与Eloquent模型关联
Requires
- php: ^8.2
- ext-exif: *
- ext-fileinfo: *
- ext-json: *
- illuminate/bus: ^10.0|^11.0
- illuminate/conditionable: ^10.0|^11.0
- illuminate/console: ^10.0|^11.0
- illuminate/database: ^10.0|^11.0
- illuminate/pipeline: ^10.0|^11.0
- illuminate/support: ^10.0|^11.0
- maennchen/zipstream-php: ^3.1
- spatie/image: ^3.3.2
- spatie/laravel-package-tools: ^1.16.1
- spatie/temporary-directory: ^2.2
- symfony/console: ^6.4.1|^7.0
Requires (Dev)
- ext-imagick: *
- ext-pdo_sqlite: *
- ext-zip: *
- aws/aws-sdk-php: ^3.293.10
- guzzlehttp/guzzle: ^7.8.1
- larastan/larastan: ^2.7
- league/flysystem-aws-s3-v3: ^3.22
- mockery/mockery: ^1.6.7
- orchestra/testbench: ^7.0|^8.17|^9.0
- pestphp/pest: ^2.28
- phpstan/extension-installer: ^1.3.1
- spatie/laravel-ray: ^1.33
- spatie/pdf-to-image: ^2.2
- spatie/pest-plugin-snapshots: ^2.1
Suggests
- league/flysystem-aws-s3-v3: Required to use AWS S3 file storage
- php-ffmpeg/php-ffmpeg: Required for generating video thumbnails
- spatie/pdf-to-image: Required for generating thumbnails of PDFs and SVGs
Conflicts
- php-ffmpeg/php-ffmpeg: <0.6.1
This package is auto-updated.
Last update: 2024-09-08 08:59:43 UTC
README
将文件与Eloquent模型关联
此包可以将各种类型的文件与Eloquent模型关联起来。它提供了一个简单的API来进行操作。要了解更多信息,请访问详细的文档。
以下是你可以做的一些简要示例
$newsItem = News::find(1); $newsItem->addMedia($pathToFile)->toMediaCollection('images');
它可以直接处理你的上传
$newsItem->addMedia($request->file('image'))->toMediaCollection('images');
想要在另一个文件系统上存储一些大文件?没问题
$newsItem->addMedia($smallFile)->toMediaCollection('downloads', 'local'); $newsItem->addMedia($bigFile)->toMediaCollection('downloads', 's3');
文件的存储由Laravel的文件系统处理,因此你可以使用任何你喜欢的文件系统。此外,该包还可以在媒体库中添加的图片和PDF上进行图像处理。
Spatie是比利时安特卫普的一家网页设计公司。你可以在我们的网站上找到我们所有开源项目的概述在这里。
支持我们
我们在创建一流的开源包上投入了大量资源。你可以通过购买我们的付费产品之一来支持我们。
我们非常感谢你从你的家乡寄给我们明信片,并说明你使用了我们哪个包。你可以在我们的联系页面上找到我们的地址。我们将所有收到的明信片发布在我们的虚拟明信片墙上。
文档
你可以在https://spatie.be/docs/laravel-medialibrary上找到文档。
如果你在使用包时遇到困难?发现了bug?你有关于改进媒体库的一般性问题或建议吗?请随时在GitHub上创建一个问题,我们将尽快解决。
如果你发现了关于安全的bug,请通过security@spatie.be发送邮件,而不是使用问题跟踪器。
测试
你可以使用以下命令运行测试
./vendor/bin/pest
你可以在本地使用act运行Github actions。你必须为ubuntu-latest平台使用自定义镜像来正确启动PHP。要本地运行测试,请运行
act -P ubuntu-latest=shivammathur/node:latest
要运行特定的工作流程,例如run-tests.yml
,请运行
act -P ubuntu-latest=shivammathur/node:latest -j run-tests
升级
请参阅UPGRADING以获取详细信息。
变更日志
请参阅CHANGELOG以获取最近更改的信息。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全
如果你发现了任何与安全相关的问题,请通过security@spatie.be发送邮件,而不是使用问题跟踪器。
致谢
特别感谢尼古拉斯·博瓦瓦(Nicolas Beauvais)帮助解决本仓库的问题。
还要特别感谢Caneco为我们的logo所做的贡献✨
替代方案
许可证
MIT许可证(MIT)。更多信息请参阅许可证文件。