问题描述
我有一个名为Post的自定义实体。 每个帖子可以有一个main_image和一个cover_image。
如何使用VarBox媒体库为这两种图像类型定义不同的样式?
我看到有一个config/varBox/upload.PHP
用于定义图像的样式,但是我想知道是否可以定义单个样式
解决方法
实际上有一个名为config/varbox/upload.php
的配置文件,但它是整个上传功能的通用配置。
要实现所需的功能,您将必须通过实现Post
特征上的getUploadConfig
方法来定制配置,特别是针对Varbox\Traits\HasUploads
模型的配置。
以下是文档部分供参考:https://varbox.io/docs/1.x/file-uploads#specific-model-configurations
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use Varbox\Traits\HasUploads;
class Post extends Model
{
use HasUploads;
/**
* Get the specific upload config parts for this model.
*
* @return array
*/
public function getUploadConfig()
{
return [
'images' => [
'styles' => [
'main_image' => [
'square' => [
'width' => '100','height' => '100','ratio' => true,]
],'cover_image' => [
'landscape' => [
'width' => '800',],];
}
}
此外,您可能需要在显示图像时考虑不同的设备分辨率,从而为main_image
和cover_image
创建多种样式并相应地显示它们。