2016-08-19 10 views
1

state_machine 보석을 생각해 볼 때, 주어진 주 전에 오는 상태 이름/기호 집합을 어떻게 선택합니까? :pending, :signature_needed, :ordered, :finalized :루비`state_machine` 보석으로 주어진 주 전에 올 상태리스트를 얻는 방법은 무엇입니까?

내가 네 가지 상태를 가지고 있다고 할 수 있습니다. 초기 (:pending)에서 최종 (:finalized) 상태로의 선형 진행을 가정합니다.

:ordered 앞에 오는 모든 주를 어떻게 얻을 수 있습니까? 나는 과 같은 결과를 기대합니다.

참고 : 방금이 기능이 제공되지 않는 이유를 알아 내려고 시도한 후에 state_machinenot currently supported (이 기능을 추가 한 PR을 만들려고 했음)이라는 사실을 깨달았습니다.

+0

코드를 게시하여 상태 시스템을 설정할 수 있습니까? 그러면 주어진 상태보다 선행하는 상태를 파생시키는 코드를 쉽게 파악할 수 있습니다. – kcdragon

+2

정말 가능합니까? 나는 보석 자체에 익숙하지 않지만, 다중 상태 경로가 있다면 어떻게 될까? 원하는 행동은 무엇입니까? –

+0

나는 @SebastianLenartowicz와 함께있다. - 'ordered :'앞에 명시 적으로 정의 된 상태가 아니라도 이것이 가능하다면 궁금 할 것이다. ... – CDub

답변

0

(현재 유지 관리되지 않은) state_machine 보석에는 이러한 기능이 없습니다. 비선형 상태 전이가 가능하기 때문에 "어느 상태가 다른 상태보다 먼저 오는지"를 정확히 설명하는 것은 매우 복잡하고 예측하기 어려울 수 있습니다. 따라서, state_machine 보석을 사용하는 각 응용 프로그램은 자신의 믹스 인을 만들어주기 전후의 상태를 동적으로 결정해야합니다.

답 신용은 OP 아래 코멘트에 있습니다.