Model view controller Ember.js:Where/when/why在模型或控制器中声明属性?

Model view controller Ember.js:Where/when/why在模型或控制器中声明属性?,model-view-controller,properties,ember.js,Model View Controller,Properties,Ember.js,看起来我可以在模型和控制器中声明计算属性。我已经到了一个地步,我不确定要找哪一个给定的属性 什么决定了属性是否应该放在控制器中而不是模型中?通常,如果属性本质上是表示性的(例如显示、标签、格式),则放在控制器中;如果属性是记录本身固有的(例如计算、关联),则放在模型中 但实际上: 模型如果属性 需要由其他模型访问,因为模型无法访问其控制器 在设置控制器之前,需要在路由中访问 需要跨控制器持久化(例如,order。小计用于OrderNewController和OrderController)

看起来我可以在模型和控制器中声明计算属性。我已经到了一个地步,我不确定要找哪一个给定的属性


什么决定了属性是否应该放在控制器中而不是模型中?

通常,如果属性本质上是表示性的(例如显示、标签、格式),则放在控制器中;如果属性是记录本身固有的(例如计算、关联),则放在模型中

但实际上:

模型如果属性

  • 需要由其他模型访问,因为模型无法访问其控制器
  • 在设置控制器之前,需要在路由中访问
  • 需要跨控制器持久化(例如,
    order。小计
    用于OrderNewController和OrderController)
控制器如果属性

  • 仅需要通过视图或模板访问
  • 仅需要其他控制器访问
您可能会将大多数属性放在控制器中,直到遇到需要从其他模型访问属性的情况,或者您发现自己编写
{{controllers.modelName.property}}
的次数太多