becklyn/ddd-file-store

Becklyn项目使用的文件存储引擎

安装次数: 3,751

依赖: 0

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

类型:symfony-bundle

4.0.0 2023-05-17 08:52 UTC

This package is auto-updated.

Last update: 2024-09-17 11:52:57 UTC


README

这个库提供使用Becklyn DDD框架的文件存储功能。

需求

必须在项目中启用命令处理器和事件订阅者。有关如何设置的详细信息,请参阅becklyn/ddd-symfony-bridge文档。

安装

  • 运行 composer require becklyn/ddd-file-store
  • 将以下内容添加到bundles.php中
Becklyn\Ddd\FileStore\BecklynFileStoreBundle::class => ['all' => true],
  • 提供了一个Doctrine迁移。通过运行 php bin/console doctrine:migrations:migrate 来执行它。
  • 如果命令处理器应该记录错误,将以下内容添加到services.yaml中
becklyn_ddd.file_store.handler.create_file:
        class: Becklyn\Ddd\FileStore\Application\CreateFileHandler
        arguments:
            $logger: '@YOUR_PSR_LOGGER_INTERFACE_COMPLIANT_SERVICE_HERE'
        tags:
            - { name: command_handler, register_public_methods: true }

becklyn_ddd.file_store.handler.replace_file_contents:
    class: Becklyn\Ddd\FileStore\Application\ReplaceFileContentsHandler
    arguments:
        $logger: '@YOUR_PSR_LOGGER_INTERFACE_COMPLIANT_SERVICE_HERE'
    tags:
        - { name: command_handler, register_public_methods: true }

如何使用

通过通过命令总线派发CreateFileCommand和ReplaceFileContentsCommand将文件保存到文件存储中。通过使用FileManager类的load方法读取文件。通过通过命令总线派发DeleteFileCommand来删除文件。默认情况下,由库创建的文件将存储在%kernel_project_root%/var/becklyn-files文件夹中。这可以通过配置来更改。

配置

要更改配置选项的默认值,请在config/packages文件夹中创建一个becklyn_ddd.file_store.yaml文件,并包含以下内容

becklyn_ddd.file_store:
   option_name: value
   option_namespace_1:
       namespaced_option_name: value

可用选项

filesystem.base_path

  • 类型:字符串
  • 默认:'%kernel_project_root%/var/becklyn-files'

这是文件将被保存到的文件夹。