djvue/d-media-bundle

d-media包的Symfony扩展包

安装次数: 159

依赖者: 0

建议者: 0

安全: 0

星标: 3

关注者: 1

分支: 0

开放问题: 0

类型:symfony-bundle

0.9.10 2022-06-05 22:43 UTC

This package is auto-updated.

Last update: 2024-09-07 00:02:48 UTC


README

介绍

Symfony D-Media Bundle是一个提供前端媒体管理库和服务的JSON REST HTTP API的包,用于在后台使用媒体。

前端包: vue-d-media

使用示例: symfony-d-media-bundle-example

使用示例演示: demo

安装

使用composer安装

composer require djvue/d-media-bundle

需要PHP >=8.0和Symfony >=5.2

您可能还需要安装前端组件。请参阅前端存储库中的说明vue-d-media

入门

  • 添加包

config/bundles.php

return [
    ...,
    Djvue\DMediaBundle\DMediaBundle::class => ['all' => true],
];
  • 导入路由

config/routes.yaml

media:
    resource: '@DMediaBundle/Resources/config/routes/media.yaml'
    prefix: '/api/media' #your prefix equal to frontend library api.config.prefix
    trailing_slash_on_root: false
    name_prefix: board_media_
  • 配置(可选)

config/packages/d_media.yaml

d_media:
    filterable_entities:
        - workspace
    storage:
        public_url: /storage/medias
        directory: /uploads
    library:
        image_extensions: png, jpg, jpeg, webp

帮助服务

SomeClass.php

public function __construct(
    private MediaService $mediaService,
    private MediaEntityService $mediaEntityService,
) {
}

安全

包控制器使用symfony/security。为了控制访问,请添加投票者:MediaVoter和MediaGetListVoter。

请参阅symfony示例存储库中的示例symfony-d-media-bundle-example