В настоящее время мне интересно, как я могу реализовать переход, который имеет два возможных места.
Есть следующие места:
Я хочу знать, как разработать переход «проверка», который выполняет некоторую проверку, и если он не удался, он должен установить маркировку на valid_data, в противном случае - на invalid_data.
Обычно я могу определить только состояние (или несколько), но не такие необязательные состояния, как это (valid_data) или то (invalid_data).
Кто-нибудь знает решение для этого?
Спасибо.




Есть только один способ сделать это, объявив два перехода:
framework:
workflows:
pull_request:
type: 'state_machine'
initial_place: inital
places:
- inital
- valid_data
- invalid_data
transitions:
valida:
from: inital
to: valid_data
invalid:
from: inital
to: invalid_data
Также вы можете определить еще один шаг, например in_validation, и перейти от initial к in_validation, а затем к одному из двух конечных состояний.
В документации вы можете увидеть очень хороший пример: http://symfony.com/doc/current/workflow/state-machines.html
Да, это тоже решение, которое я нашел для своего вопроса. Но что есть, когда я хочу заблокировать переход «valida», когда он не работает (из-за прослушивателя GuardEvent), а затем применить другой переход, это также невозможно.