I have events that can be in different time zones.
Upon edit I want the time & date to show with the time zone
As pixeltrix pointed out in the thread of the bug report, it's cleaner to override the readers/getters of the attributes in question like so:
# in event model
def beginn
super.in_time_zone(time_zone) if super
end
def endd
super.in_time_zone(time_zone) if super
end
This way the logic in the edit action as outlined in the question can be omitted and interferences with other parts that rely on Time.zone are avoided.