У меня есть маршрут, который отображает список проблем, когда я создаю новый вызов, когда запись сохраняется, но модель списка задач не обновляется, когда я возвращаюсь обратно в маршрут. Есть что-то, чего я не хватает?Модель Ember не обновлена
//new.js
var challenge = this.store.createRecord('challenge', {
name_en: this.get('model.name_en'),
name_fr: this.get('model.name_fr'),
description_en: this.get('model.description_en'),
description_fr: this.get('model.description_fr'),
end_date: this.get('model.end_date'),
start_date: this.get('model.start_date'),
points_cap: this.get('model.points_cap'),
points_goal: this.get('model.points_goal'),
challenge_type: 1,
short_description_en: this.get('model.short_description_en'),
short_description_fr: this.get('model.short_description_fr'),
excluded_activities: excluded
});
// Persist record.
challenge.save().then((challenge) => {
this.transitionToRoute('challenges');
}).catch((error) => {
this.handleError(error, 'error.system_error');
});
//router.js
Router.map(function() {
this.route('challenges', function() {
this.route('new');
this.route('challenge', {
path: ':challenge_id'
}, function() {
this.route('delete');
this.route('edit');
});
});
//challenges.js
import Ember from 'ember';
import AuthenticatedRouteMixin from 'simple-auth/mixins/authenticated-route-mixin';
import UserProfile from '../models/user-profile';
export default Ember.Route.extend(AuthenticatedRouteMixin,{
userProfile: UserProfile.create(),
model: function() {
return this.store.query('challenge', {league_id: this.get('userProfile.league_id')});
}
});
//new challenge payload
{
"activity_exclusion_list":[
],
"challenge_type":1,
"challengeUrl":null,
"end_date":"31-10-2015",
"number_participants":null,
"number_teams":null,
"points_cap":null,
"points_goal":null,
"start_date":"01-10-2015",
"leagueId":"1",
"teams":[
],
"name_lang":{
"en":"New Challenge ",
"fr":null
},
"description_lang":{
"en":"New Challenge",
"fr":null
},
"short_description_lang":{
"en":"New Challenge",
"fr":null
}
}
//response from new challenge
{
"challenge_type":"Individual",
"description":" ",
"description_fr":null,
"description_lang":{
"en":"New Challenge",
"fr":null
},
"challengeUrl":" ",
"start_date":"01-10-2015",
"end_date":"31-10-2015",
"name":" ",
"name_fr":null,
"name_lang":{
"en":"New Challenge ",
"fr":null
},
"points_cap":0,
"points_goal":0,
"short_description":" ",
"short_description_fr":null,
"short_description_lang":{
"en":"New Challenge",
"fr":null
},
"number_participants":0,
"number_teams":0,
"teams":[
],
"challenge_id":265,
"activity_exclusion_list":[
],
"leagueId":1
}
На первый взгляд кажется, что все в порядке. Можете ли вы предоставить свой маршрут вызова, чтобы узнать, как вы извлекаете модель? –
Конечно, вы идете – jpoiri
Я предполагаю, что вы используете 'this.store.query', потому что' league_id' не является вашим основным идентификатором, не так ли? то в вашем 'createRecord', где вы устанавливаете' league_id'? –