我是 Ember 的新手,我正在尝试创建一个简单的应用程序,其中有 2 个模型,Mountains 和 Ranges。一个山脉有许多山脉,而一座山属于一个山脉。我想在他们之间建立一种关系。我在网上搜索过,但我发现了不同的解释,但我仍在努力解决这个问题。
我的模型是:
mountain.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
altitude: DS.attr('number'),
range: DS.belongsTo('range', {async: true})
});
range.js
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
length: DS.attr('number'),
mountains: DS.hasMany('mountain', {async: true})
});
我的mirage/scenario/default.js
文件如下所示:
export default function(server)
{
var himalaya = server.create('range', {id: 1, name:'Himalaya', length:'16598' });
var karakorum = server.create('range', {id: 2, name:'Karakorum', length:'34801' });
var everest = server.create('mountain', {id:1, name: 'Everest', altitude: '8871', range_id:1 });
var K2 = server.create('mountain', {id:2, name: 'K2', altitude: '8657', range_id:2 });
}
这些是mirage/factories/range.js
和mirage/factories/mountain.js
文件:
import Mirage, {faker} from 'ember-cli-mirage';
export default Mirage.Factory.extend({
});
这是在 Ember-CLI 中与 mirage 建立关系的正确方法吗?我还想在喜马拉雅页面(我已经创建了一条路线和一个模板)中显示属于喜马拉雅山脉的所有山脉。我怎样才能做到这一点?
提前致谢。