简单的Ember.js关系

时间:2013-06-16 22:10:44

标签: ember.js coffeescript ember-data

我是ember.js的新手,我在设置Ember Data Objects之间的关系时遇到了一些麻烦。对不起,我还没有完成我的谷歌到期 - 我仍然很新,我甚至不知道该搜索什么。

我能够使用咖啡脚本和一些教程来获得一些基础知识,但现在我在一些简单的关系上苦苦挣扎,我想要的是拥有多个人群(群组)(多个群组)靴子),具有多个任务,具有描述完成或完成。这就是现在所有的一对多关系 - 我现在并不担心多对多的关系。

不幸的是,我在一开始就被绊倒了。我的所有代码都是复制和粘贴的。我相信我必须以某种方式为靴子动态创建一个控制器,基于哪个群组被选中 - 或者我可能需要制作路线并让它设置控制器?我确信这比我更简单,但我似乎无法通过我有限的余韵词汇在线找到更多的资源

Plato.Router.map ->
  this.resource('cohorts', ->
    this.resource('cohort', {path: ':cohort_id'}))

Plato.CohortsRoute = Ember.Route.extend(
  model: ->
    Plato.Cohort.find()
)

Plato.CohortsController = Ember.ArrayController.extend()

Plato.BootsController = Ember.ArrayController.extend()

Plato.Cohort = DS.Model.extend(
  name: DS.attr('string'),
  boots: DS.hasMany('Plato.Boot')
)

Plato.Boot = DS.Model.extend(
  name: DS.attr("string")
  cohort: DS.belongsTo('Plato.Cohort')
)

1 个答案:

答案 0 :(得分:3)

到目前为止,您的代码接缝是正确的。但是由于你没有提供任何更多的细节,我试图重现你的情况(提供缺失的部分),这里working results作为jsbin。 请尝试将您的代码与jsbin中的代码进行比较,也许您可​​以找出哪些代码不适合您。

希望有所帮助