Hi @dknutsen
I made a slight change to the existing code
rule-set-version model looks like this
export default DS.Model.extend({
is_live: DS.attr('boolean'),
is_archived: DS.attr('boolean'),
start_time: DS.attr('date'),
end_time: DS.attr('date'),
created_at: DS.attr('date'),
updated_at: DS.attr('date'),
rule_set: DS.belongsTo('rule-set'),
rules: DS.hasMany('rule'),
default_rule_id: DS.attr('number'),
test_cases: DS.hasMany('test-case'),
isEditable: false
})
My API response now looks like
{
page_number: 1
page_size: 5
rule_set_versions: [,…]
total_pages: 1
total_rows: 3
}
rule-set-version serializer looks like below now
var underscore = Ember.String.underscore;
export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
rules: {
embedded: 'always'
},
test_cases: {
serialize: "id",
deserialize: 'records'
},
},
keyForRelationship: function (rawKey) {
return underscore(rawKey) + "_id";
},
normalizeResponse(store, model, payload, id, requestType) {
const data = {
rule_set_versions: {
id: Date.now(),
rule_set_versions: payload.rule_set_versions,
total_rows: payload.total_rows,
page_number: 1,
page_size: 5,
total_pages: 1
}
}
return this._super(store, model, data, id, requestType);
}
})
controller
ruleSetVersionsQuery: Ember.computed(function() {
console.log(this.get("model.ruleSetVersions"))
return this.get("model.ruleSetVersions")
})
route
export default Route.extend(ResetScrollMixin, {
model(params, { queryParams }) {
return hash({
ruleSetVersions: this.store.queryRecord('rule-set-version', {
rule_set_id: params.rule_set_id,
is_archived: false,
page: queryParams.page || 1
}),
ruleSet: this.store.findRecord('rule-set', params.rule_set_id)
})
}
});
Now how can I access this pagination params as well in the controller.
Sorry I had made the change totally different from the initial one.