カードセットが左側のサイドバーに表示されるフラッシュカードアプリをやっています。セットをクリックすると、メイン パネルに次のように表示されます。
- ボタンバー
- カードのテーブル。
ボタンバーのスタディボタン(リンク)をクリックすると、カードテーブルをスタディパネルに置き換えてほしいです。
セットやセットの下でのネスティングスタディなど、これを行うさまざまな方法を試しましたが、どちらも機能しません。現在、セットの下にネストされていますが、問題は次のとおりです。
- セット ID を入力するスタディ リンクを取得できません。おそらく、アウトレットではなく部分的なb / cボタンバーですか?
- IDなしでもリンクをクリックできます(テスト用にハードコードされたものを試しました)が、スタディページではなくセットテーブルが表示されます。
以下の関連コード。完全なコードは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
セット.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
{{partial "sets/set_actions"}}
<h3> {{name}} (id: {{id}})</h3>
{{render "cards/table" cards}}
セット/_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>