首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony中的工作流不适用于"multiple_state“

Symfony中的工作流不适用于"multiple_state“
EN

Stack Overflow用户
提问于 2021-06-09 11:08:15
回答 1查看 422关注 0票数 0

在Symfony 5.2.8和Workflow 5.2.7的一个配置文件中,我有:

代码语言:javascript
复制
    framework:
        workflows: 
            register_participation:
                type: 'workflow' # or 'state_machine'
                audit_trail:
                    enabled: true
                marking_store:
                    type: 'multiple_state'
                    arguments: 
                        - complexState
               # [...]

当我执行bin/console时,出现了错误:

framework.workflows.workflows.register_participation.marking_store".可用选项中未识别的选项“参数”是“属性”、“服务”、“类型”。

当我将配置更改为:

代码语言:javascript
复制
    framework:
        workflows: 
            register_participation:
                type: 'workflow' # or 'state_machine'
                audit_trail:
                    enabled: true
                marking_store:
                    type: 'multiple_state'
                    property: state
       #         [...]

我知道错误:

路径framework.workflows.workflows.register_participation.marking_store.type".允许值不允许值"multiple_state“:”方法“

当我更改为以下内容时,它是工作的

代码语言:javascript
复制
        marking_store:
            type: 'method'
            property: main_state

有人知道我能用multiple_state做些什么吗?提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-10 09:49:44

来自symfony工作流文档

标记存储类型可以是“multiple_state”或“single_state”。单个状态标记存储不支持同时位于多个位置的模型。这意味着“工作流”必须使用“multiple_state”标记存储,“state_machine”必须使用“single_state”标记存储。Symfony默认根据“类型”配置标记存储,因此最好不要配置它。 单个状态标记存储区使用字符串来存储数据。多状态标记存储区使用数组存储数据。

因此,如果您配置“工作流”类型,它应该自动为"multiple_state“。您可以转储实体,并且状态属性应该是类型数组。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67902976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档