-1
@model = new Client()

new_object = new Object()
new_object.site_id = ""
new_object.UserName = ""
etc..

@model.set(
  Header1: new_object,
  Header2: somethingelse
)

@model.save()

如何访问深度嵌套的模型/对象?尝试以下不起作用。

this.get('obj1').get('childObject').propertyName

更新:

之前看过这篇文章【backbone.js 获取和设置嵌套对象属性,但是不清楚他是如何访问childObject的。

{ Obj1 :{
   Obj2: {
    //List of properties
   }
  }
}

当我将它设置为我的模型类时,我将如何获取 Obj2 的属性。

4

1 回答 1

1

它应该完全按照您上面描述的那样工作,看起来您可能正在混合属性和属性。

以下是对子模型使用这两种方法的示例:

var m1 = new Backbone.Model;
var c1 = new Backbone.Model, c2 = new Backbone.Model, c3 = new Backbone.Model;
c3.level = "final";
c1.set({'stuff' : 'this', 'child' : c3});
c1.prop = "go";
c2.set({'stuff' : 'that', 'child' : c3});
c2.prop = "stop";
m1.set({'child1' : c1});
m1.set({'child2': c2});
console.log(m1.get('child1').get('stuff'));
console.log(m1.get('child1').prop);
console.log(m1.get('child1').get('child').level);
console.log(m1.get('child2').get('stuff'));
console.log(m1.get('child2').prop);
console.log(m1.get('child2').get('child').level);

这应该产生控制台输出:

this
go
final
that
stop
final
于 2013-02-04T19:12:33.827 回答