#16 new
Cassiano D'Andrea

Previous (or current) and new states the same when calling aasm_event_fired()

Reported by Cassiano D'Andrea | March 23rd, 2009 @ 01:59 PM

When calling the :aasm_event_fired method (when defined), automatically fired by AASM::aasm_fire_event, the previous (or current) and new states seem to always be the same, due to the fact that the call to AASM::set_aasm_current_state_with_persistence changes the value of the :aasm_current_state attribute to the new state prior to the :aasm_event_fired call. Follows a possible (and simple) solution:

http://www.pastie.org/424478

Also, I would like to suggest that the 'persist' parameter be passed along to :aasm_event_fired call, so logging the status change in a separate model might be possible in this method (which wouldn't make sense if persist == false). So the final code might look like:

http://www.pastie.org/424512

Cheers,

Cassiano.

Comments and changes to this ticket

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.

New ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป

Library for adding state machines to Ruby classes. Includes persistence layers for things like ActiveRecord. Formerly known as acts_as_state_machine.

People watching this ticket

Pages