0
 App.Exam = DS.Model.extend({
 examType: attr('string'),
 examDate: attr('date'),
 gradeText: attr('string'),
 courseName: attr('string'),
 courseName__startswith: attr('string'),
 typeName: attr('string'),
 numberOf: attr('number'),
 grade: attr('number'), });

这是我想从控制器访问的模型。我用这个过滤模型

App.ExamController = Ember.Controller.extend({
  // the initial value of the `search` property
     search: ''

     ,query: function() {
     // the current value of the text field
     var queryCourseName = this.get('searchCourseName');
     this.set('searchResult',App.Exam.find({courseName: queryCourseName})

   }

 });

这是存储结果的正确方法App.Exam.find()吗?如果是我如何searchResult从另一个控制器访问该属性并遍历这些值?

4

1 回答 1

0

取决于您想要做什么,但是如果您在执行此操作时设置了searchResult属性ExamController

...
this.set('searchResult', App.Exam.find({courseName: queryCourseName}));
...

然后您以后可以在另一个控制器中使用该needs指令来访问您的ExamController

App.AnotherController = Ember.Controller.extend({
  needs: ['exam'],
  examBinding: 'controllers.exam',
  ...
  myFunction: function() {
    this.get('exam.searchResult') // here are your values
  }
});

这里值得注意的是,后缀BindinginexamBinding告诉 ember 设置两个属性之间的绑定,有关更多信息,请查看 API 文档的Ember.Binding

希望能帮助到你

于 2013-05-09T18:17:09.503 回答