You should bubble the event from the Person.
Add handler for childHungry in CrowdView init function
CrowdView = Backbone.View.extend({
....
initialize: function () {
this.listenTo(this.model.get("People"), 'childHungry', function(){
console.log("Someone's child is hungry");
});// listening to child hungry
this.listenTo(this.model.get("People"), 'change:Hungry', this.hungryChange);
},
});
Person model should listen to his children and trigger that he has a child hungry
PersonModel = Backbone.RelationalModel.extend({
....
initialize: function(){
this.listenTo(this.get("Children"), 'change:Hungry', this.childHungry);
},
childHungry: function(){
this.trigger("childHungry");
}
By the Way: if you don't want the Crowd to distinguish between a child hungry or a person hungry you could also just trigger change:Hungry on the above childHungry function and keep your versiono CrowdView (See http://jsfiddle.net/fnj58/2/)