I spent some time in IRC this morning, and was turned on to the right path when it was suggested that I tell the controller not to redirect if the selection from the Ember.Select
was null
. This solved the redirect problem, but broke the selector - the first attempt to select a value resulted in no change; after that it worked properly.
I moved the select into a custom view extending Ember.Select
and put the change action there. Then I populated the initial value of the property on the controller using the router, and everything seems to work.
So - lesson:
1) Put change events on custom views; don't have the controller observe directly.
2) When a controller is watching a change of a property, make sure that there is an initial value. This may be uniquely true for values which are supplied by the database.