Backbone.js集合在哪里

时间:2013-03-20 19:11:29

标签: backbone.js

我很喜欢对集合进行过滤,模型是这样的学生:

{
   code: "some code",
   name: "some name",
   course: {
      course_code: "some code",
      course_name: "course name"
   }
}

如果我尝试做这样的过滤器:

var myVar = students.where({code: "some code"})

myVar将根据代码填写学生,没有任何问题。但是如何按course_code进行过滤? 我已经尝试过了:

var myVar = students.where({course: {course_code: "some code"}})

但如果我尝试

,我什么也得不到
var myVar = students.where({course.course_code: "some code"}) 

我收到错误。

2 个答案:

答案 0 :(得分:3)

让我们假设您正在找到课程代码为101的学生。

var student_with_course_code = students.filter(function(student) {
      return student.get('course').get('code') == 101;
});

答案 1 :(得分:1)

var myVar = students.find(function(s) {return s.course.course_code == "some code"} )