📅  最后修改于: 2023-12-03 15:02:36.844000             🧑  作者: Mango
Laravel 媒体库是一个方便的工具,可以让你轻松地管理和储存网站上的图片、视频等多媒体资源。但是,当你需要改变图片尺寸、质量等时,可能需要重新生成这些图片。这时,Laravel 媒体库重新生成就显得非常有用了。
在开始使用 Laravel 媒体库重新生成之前,你需要先安装它。你可以使用 Composer 进行安装:
composer require spatie/laravel-medialibrary
安装完毕后,在 config/app.php
文件的 providers
数组里添加:
Spatie\MediaLibrary\MediaLibraryServiceProvider::class,
然后发布配置文件和数据库迁移文件:
php artisan vendor:publish --provider="Spatie\MediaLibrary\MediaLibraryServiceProvider" --tag="config"
php artisan vendor:publish --provider="Spatie\MediaLibrary\MediaLibraryServiceProvider" --tag="migrations"
运行数据库迁移:
php artisan migrate
以上步骤完成后,Laravel 媒体库就可以正常使用了。
Laravel 媒体库重新生成 CLI 工具提供了一些选项,可以让你指定要重新生成的媒体类型、尺寸等信息。以下是使用方法:
php artisan media-library:regenerate [--ids[=IDS]] [--model[=MODEL]] [--collection[=COLLECTION]] [--mime-types[=MIME-TYPES]] [--skip-if-exists] [--force] [--queue] [--batch-size[=BATCH-SIZE]] [--sleep[=SLEEP]] [--only-urls] [--only-missing-converted-images] [--include-non-processed] [--with-backups]
--ids
:要重新生成的媒体 ID,多个 ID 使用逗号分隔。--model
:指定要重新生成的模型类。--collection
:指定要重新生成的集合名称。--mime-types
:指定要重新生成的 MIME 类型。--skip-if-exists
:如果已经存在,则跳过重新生成。--force
:即使文件没有更改也重新生成。--queue
:将重新生成任务添加到队列。--batch-size
:一次处理任务的数量,默认为 50。--sleep
:每处理一批任务后休眠的秒数,默认为 0。--only-urls
:只重新生成媒体库的 URL 资源。--only-missing-converted-images
:只重新生成没有转换的图片。--include-non-processed
:包括未转换或错误的文件。--with-backups
:包括备份文件。例如,要重新生成 ID 为 1 和 2 的媒体资源:
php artisan media-library:regenerate --ids 1,2
Laravel 媒体库重新生成是一个非常有用的工具,可以帮助你更好地管理和优化网站的多媒体资源。使用它可以轻松地重新生成图片、视频等多种类型的资源,同时也提供了一些选项,让你更加灵活地应对不同的需求。建议你花些时间熟悉它并应用到自己的项目中。