Workflow Symfony 4。工作流初始位置不';行不通

Workflow Symfony 4。工作流初始位置不';行不通,workflow,symfony4,Workflow,Symfony4,在workflow.yml中,我定义了初始位置 framework: workflows: case_workflow: type: 'workflow' # or 'state_machine' audit_trail: enabled: true marking_store: type: 'multiple_state' # or '

在workflow.yml中,我定义了初始位置

framework:
    workflows:
        case_workflow:
            type: 'workflow' # or 'state_machine'
            audit_trail:
                enabled: true
            marking_store:
                type: 'multiple_state' # or 'single_state'
                arguments:
                    - 'currentPlace'
            supports:
                - App\Entity\Cases\CoreCase

            initial_place: initial

            places:
                - initial
                - review
                - rejected
                - published

            transitions:
                to_review:
                    from: initial
                    to:   review
                publish:
                    from: review
                    to:   published
                reject:
                    from: review
                    to:   rejected
在实体中,我定义了属性

/**
 * @ORM\Column(type="string", length=50)
 */
private $currentPlace;
在控制器中,我创建实体并将其持久化

$dieselCase = new DieselCase();
$dieselCase->setUser($account);
$dieselCase->setCustomer($account);
$em->persist($dieselCase);
$em->flush();


但currentPlace未设置为initial。它是工作流包中的一个bug吗?我如何解决这个问题?

很晚才回答,但是,Symfony就是这样工作的<代码>空值=
初始位置

如果在数据库为
null
时使用
WorkflowInterface
getMarking($dieselCase)
,它将报告该位置为您配置的
['initial']
。或者,如果您使用
标记存储:键入:“单一状态”
,它将报告
“初始”


只有在您执行
$workflow->apply($dieselCase,'to_review')

非常晚的回答时,“currentPlace”标记存储才会被填充,但是,Symfony就是这样工作的<代码>空值=
初始位置

如果在数据库为
null
时使用
WorkflowInterface
getMarking($dieselCase)
,它将报告该位置为您配置的
['initial']
。或者,如果您使用
标记存储:键入:“单一状态”
,它将报告
“初始”

只有在执行
$workflow->apply($dieselCase,'to_review')