2013-02-26 3 views
1

Я делаю приложение с флэш-картой, где на левой панели отображаются наборы карт. Щелчок на множестве показывает на главной панели:Структура размещения в Ember Route

  1. кнопка бар
  2. таблица карт.

При нажатии кнопки «Исследование» (ссылки) на панели кнопок мне нужна панель для изучения, чтобы заменить карточный стол.

Я пробовал различные способы сделать это, например, вложенное исследование под наборы или набор, но не работает. В настоящее время вложенные в комплект, возникают следующие проблемы:

  1. не может получить ссылку на изучение, чтобы заполнить заданный идентификатор. Возможно, б/с панель кнопок в частичном нет розетки?
  2. вы можете щелкнуть ссылку даже с идентификатором (и я попробовал жестко запрограммированный для тестирования), но отображает установленную таблицу, а не страницу исследования.

Релевантный код ниже. Полный код на github, и может быть просмотрен на heroku.

Оцените, как лучше всего это настроить.

маршрутизации

App.Router.map -> 
    @resource 'sets', -> 
    @resource 'set', { path: ':set_id' }, -> 
     @route 'study', { path: 'study' }, -> 


App.SetsRoute = Ember.Route.extend 
    model: -> App.Set.find() 

App.SetRoute = Ember.Route.extend 
    setupController: (controller, model) -> 
    controller.set 'content', model 

App.SetStudyRoute = Ember.Route.extend 
    model: -> App.Set.find(params?.set_id) 
    setupController: (controller, model) -> 
    controller.set 'content', model 

sets.hbs

<div id="sets" class="span2"> 
    <div class="well well-small sidebar-nav-fixed"> 
     {{partial "sets/set_list"}} 
    </div> 
</div> 

<div class="span9"> 
    {{outlet}} 
</div> 

set.hbs

комплектов/_set_action

{{#linkTo set.study set class="btn btn-primary"}}Study!{{/linkTo}} 
<button class="btn btn-primary" {{action addCard}}>Add Card</button> 
<button class="btn btn-danger" {{action delete}}>Delete Set</button> 

ответ

0

Оказывается исследование в ссылке set_actions должен ссылаться на контроллер (который относится к множеству объектов). Итак:

{{#linkTo sets.study controller class="btn btn-primary"}}Study!{{/linkTo}}. 

После этого до тех пор, пока маршруты и т. Д. Указаны правильно, похоже, работают. Будет обновлено полное решение по git.

Смежные вопросы