Ember が同じルート モデルをルートに追加し続けるという問題があります。
# ROUTER
MediaUi.Router.map(function () {
this.route('movie', { path: '/movie/:id' });
});
# ROUTE
MediaUi.IndexRoute = Ember.Route.extend({
'model': function() {
return MediaUi.Media.find();
}
});
# MODEL
MediaUi.Media = DS.Model.extend({
'type': DS.attr('string'),
'title': DS.attr('string'),
'director': DS.attr('string'),
'year': DS.attr('number'),
'url': DS.attr('string'),
'media': DS.attr('string'),
'_id': DS.attr('string'),
'description': DS.attr('string', { 'defaultValue': 'TBD' })
});x
DS.RESTAdapter.map('MediaUi.Media', {
'id': { 'key': '_id' }
});
DS.RESTAdapter.reopen({
url: 'http://localhost:3000'
});
#TEMPLATE
<table class="table">
<thead>
<tr>
<th>Title</th>
<th>Description</th>
<th>Actions</th>
</tr>
</thead>
{{#each item in model}}
<tr {{ bindAttr data-id="item._id" }}>
<td>{{#linkTo 'movie' item }} {{ item.title }} {{/linkTo}}</td>
<td><p>{{ item.description }}</p></td>
<td>
<button {{ action "launchModal" item target="view" }} class="btn btn-info">More Information</button>
<button class="btn btn-warning">Edit</button>
<button class="btn btn-danger">Remove</button>
</td>
</tr>
{{/each}}
</table>
{{ view MediaUi.ModalView }}
# JSON
{
"medias": [
{
"type": "movie",
"title": "The Dark Knight",
"director": "Christopher Nolan",
"year": 2008,
"url": "http://www.imdb.com/title/tt0468569/",
"media": "Blu-ray",
"_id": "51e2fc1b4c19500de6000001"
},
{
"type": "movie",
"title": "Inception",
"director": "Christopher Nolan",
"year": 2010,
"url": "http://www.imdb.com/title/tt1375666/",
"media": "Blu-ray",
"_id": "51e2fc1b4c19500de6000002"
},
{
"type": "movie",
"title": "The Dark Knight Rises",
"director": "Christopher Nolan",
"year": 2012,
"url": "http://www.imdb.com/title/tt1345836/",
"media": "Blu-ray",
"_id": "51e2fc1b4c19500de6000003"
},
{
"type": "movie",
"title": "Django Unchained",
"director": "Quentin Tarantino",
"year": 2012,
"url": "http://www.imdb.com/title/tt1853728/",
"media": "Blu-ray",
"_id": "51e2fc1b4c19500de6000004"
},
{
"type": "movie",
"title": "City of God",
"director": "Kátia Lund,Fernando Meirelles",
"year": 2002,
"url": "http://www.imdb.com/title/tt0317248/",
"media": "DVD",
"_id": "51e2fc1b4c19500de6000005"
}
]
}
これは、次の条件が満たされている場合に発生します。
- モデル専用ページへのユーザー遷移 ('movie/:movie_id')
- 次に、ユーザーがブラウザーの戻るボタンをクリックするか、linkTo ハンドルバー ヘルパーで作成されたアプリケーションの戻るボタンをクリックします。
どんな助けでも大歓迎です。ありがとう!