Tester-ManagementのActiveRecordでpluginaweekのstate_machineを使用します。この呼び出しで、考えられるすべての状態の配列を取得します。
irb(main):013:0> Tester.state_machine.states.map &:name
=> [:candidate, :contract_sent, :contract_received, :contract_wont_return, :active, :retired]
ここで、特定の状態のテスターを取得するためにmeta_searchを使用して検索フォームを作成する必要はありません。selectを使用したい:
- states = {}; Tester.state_machine.states.map(&:name).each{ |e| states[t(e.to_s)] = e }
= form.input :state_equals, :as => :select, :collection => states
それは機能しますが、新しいハッシュを作成して各要素を変換するため、うまくいきません。また、私のソリューションではstate_machineにI18n yaml-structureを使用していないため、翻訳を2回挿入する必要があります...
のような方法はありますか
Tester.state_machine.states.map(&:human_state_name)
また
Tester.state_machine.human_states_name.map(&:name)
翻訳された状態を取得するには?