Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
module WriteState # Writes <tt>state</tt> to the state column and persists it to the database # using update_attribute (which bypasses validation) # # foo = Foo.find(1) # foo.aasm_current_state # => :opened # foo.close! # foo.aasm_current_state # => :closed # Foo.find(1).aasm_current_state # => :closed # # NOTE: intended to be called from an event def aasm_write_state(state) old_value = read_attribute(self.class.aasm_column) write_attribute(self.class.aasm_column, state.to_s) unless self.save(false) write_attribute(self.class.aasm_column, old_value) return false end true end end
This paste will be private.
From the Design Piracy series on my blog: