На основании того, что я прочитал (пожалуйста, поправьте меня, если я ошибаюсь), логика, которая обрабатывает, когда модель должна быть сохранена, и где переход следующий должен быть в маршрутизаторе.
Если это так, я столкнулся с некоторой проблемой: Я не знаю, как получить доступ к модели с маршрута.
Это мой контроллер (и журналы консоли "CREATED" после нажатия кнопки "Отправить" ):
App.ScoutsNewController = Ember.ObjectController.extend
submit: ->
model = @get('model')
model.on 'didCreate', ->
console.log 'CREATED' # I want to redirect to the index after creation
model.save()
Я должен переместить эту логику в маршрут, верно? Попробуйте следующее:
App.ScoutsNewRoute = Ember.Route.extend
model: ->
App.Scout.createRecord()
events:
submit: ->
# Based on what I've read, the right place to put the code you see in the controller is here. How do I get access to the model?
# I have tried @get('model'), @get('content')
Примечание. Я понимаю, что событие submit пузырится вверх от представления, до контроллера, а затем, наконец, маршрут, останавливаясь на любом из них, который имеет "отправить". Поэтому, поскольку я хочу, чтобы маршрут обрабатывал его, я удалил контроллер. Я могу видеть любой console.log
, выполненный на маршруте, мне просто нужно иметь возможность получить экземпляр модели.
Я использую Ember v1.0.0-rc.5-7-g610589a
Спасибо!