From ed26b2642410e9ec85cba3b55c8b874ae3e6e34a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorsten=20B=C3=B6ttger?= Date: Tue, 5 May 2015 22:22:01 +1200 Subject: [PATCH] fix for MongoMapper --- .../persistence/mongo_mapper_persistence.rb | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/aasm/persistence/mongo_mapper_persistence.rb b/lib/aasm/persistence/mongo_mapper_persistence.rb index 26680d58..871566fb 100644 --- a/lib/aasm/persistence/mongo_mapper_persistence.rb +++ b/lib/aasm/persistence/mongo_mapper_persistence.rb @@ -107,21 +107,21 @@ def aasm_write_state_without_persistence(state, name=:default) end private - def aasm_enum - case AASM::StateMachine[self.class].config.enum + def aasm_enum(name=:default) + case AASM::StateMachine[self.class][name].config.enum when false then nil - when true then aasm_guess_enum_method - when nil then aasm_guess_enum_method if aasm_column_looks_like_enum - else AASM::StateMachine[self.class].config.enum + when true then aasm_guess_enum_method(name) + when nil then aasm_guess_enum_method(name) if aasm_column_looks_like_enum(name) + else AASM::StateMachine[self.class][name].config.enum end end - def aasm_column_looks_like_enum - self.class.keys[self.class.aasm.attribute_name.to_s].type == Integer + def aasm_column_looks_like_enum(name) + self.class.keys[self.class.aasm(name).attribute_name.to_s].type == Integer end - def aasm_guess_enum_method - self.class.aasm.attribute_name.to_s.pluralize.to_sym + def aasm_guess_enum_method(name) + self.class.aasm(name).attribute_name.to_s.pluralize.to_sym end def aasm_skipping_validations(state_machine_name)