webundle/puzzle-media-bundle

管理媒体

安装: 2

依赖: 6

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

类型:symfony-bundle

1.0.0 2019-07-08 10:06 UTC

This package is auto-updated.

Last update: 2024-09-08 21:36:24 UTC


README

基于 Symfony 项目,用于管理媒体账户和媒体安全的项目。

安装

打开命令行,进入您的项目目录,然后执行以下命令以下载此捆绑包的最新稳定版本

composer require webundle/puzzle-media-bundle

步骤 1: 启用

通过将捆绑包添加到项目 app/AppKernel.php 文件中注册的捆绑包列表中,启用 admin 捆绑包

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Liip\ImagineBundle\LiipImagineBundle(),
            new Puzzle\MediaBundle\MediaBundle(),
        );

        // ...
    }

    // ...
}

步骤 2: 配置捆绑包安全

通过将其添加到项目 app/config/security.yml 文件中,配置安全

security:
	...
    role_hierarchy:
        ...
        # Media
        ROLE_MEDIA: ROLE_ADMIN
        ROLE_SUPER_ADMIN: [..,ROLE_MEDIA]
        
	...
    access_control:
        ...
        # Media
        - {path: ^%admin_prefix%learning, host: "%admin_host%", roles: ROLE_MEDIA }

步骤 3: 启用捆绑包路由

通过将其添加到项目 app/config/routing.yml 文件中,注册默认路由

....
media:
    resource: "@MediaBundle/Resources/config/routing.yml"
    prefix:   /


_liip_imagine:
    resource: "@LiipImagineBundle/Resources/config/routing.yaml"

输入以下命令查看所有学习路由: php bin/console debug:router | grep media

**步骤 4: 定义基础 Web 目录 **

通过将其添加到项目 app/config/parameters.yml 文件中,注册默认路由

parameters:
	....
	media_base_dir: '%kernel.root_dir%/../web'

步骤 5: 配置捆绑包

通过将其添加到项目 app/config/config.yml 文件中,配置 admin 捆绑包

# Liip
liip_imagine :
    resolvers :
        default :
            web_path : ~
    filter_sets :
        cache : ~
        thumb :
            quality : 100
            filters :
                thumbnail  : { size : [95, 60], mode : outbound }

# Admin
admin:
    ...
    modules_available: '..,media'
    navigation:
        nodes:
            ...
            # Media
            media:
                label: 'media.title'
                description: 'media.description'
                translation_domain: 'media'
                attr:
                    class: 'fa fa-cloud'
                parent: ~
                user_roles: ['ROLE_MEDIA']
            media_file:
                label: 'media.file.navigation'
                description: 'media.file.description'
                translation_domain: 'media'
                path: 'puzzle_admin_media_file_list'
                parent: media
                user_roles: ['ROLE_MEDIA']
            media_folder:
                label: 'media.folder.navigation'
                description: 'media.folder.description'
                translation_domain: 'media'
                path: 'puzzle_admin_media_folder_list'
                sub_paths: ['puzzle_admin_media_folder_create', 'puzzle_admin_media_folder_update', 'puzzle_admin_media_folder_show']
                parent: media
                user_roles: ['ROLE_MEDIA']