相关疑难解决方法(0)

将多维javascript数组转换为JSON?

将多维javascript数组转换为JSON的最佳方法是什么?

javascript arrays json

39
推荐指数
3
解决办法
8万
查看次数

将JSON映射到backbone.js集合

好吧,看起来我需要一个提示,指出我正确的方向.这个问题分为两部分 - 使用JSON的多维JSON和集合集合.

背景

我有一些JSON将从服务器检索并控制如何格式化.

多维JSON

我在将模型连接到JSON中的部件时遇到了一些麻烦.假设我想要呈现每个帖子的作者姓名,以及下面示例JSON中的状态内容.我对模型中的状态没有任何问题,但作者名称我对如何获得它有点困惑.根据我的理解,我必须覆盖解析.

这是不好的标准/我应该使用更好的JSON结构吗?保持尽可能平坦会更好吗?那是将作者姓名和照片提升一级吗?

我正在阅读如何使用Backbone.js从嵌套的JSON构建集合/模型,但对我来说仍然有点不清楚.

集合中的集合

有没有一种很好的方法在backbone.js的集合中创建一个集合?我将收集一些帖子,然后会在该帖子上收集评论.因为我在骨干方面的发展甚至可能吗?

根据我在Backbone.js集合集合Backbone.js集合集合问题中的理解,它看起来像这样?

var Comments = Backbone.Model.extend({
    defaults : {
      _id : "",
      text : "",
      author : ""
    }
})

var CommentsCollection = Backbone.Collection.extend({ model : Comments })

var Posts = Backbone.Model.extend({
    defaults : {
        _id : "",
        author : "",
        status : "",
        comments : new CommentsCollection
    }
})

var PostsCollection = Backbone.Collection.extend({ model : Posts })
Run Code Online (Sandbox Code Playgroud)

示例JSON

{ …
Run Code Online (Sandbox Code Playgroud)

javascript json backbone.js backbone.js-collections

7
推荐指数
2
解决办法
2万
查看次数

使用嵌套的json填充嵌套集合

在我的路线解决方案

Myapp.Routes = Backbone.Router.extend({
   init: function(){
        user = new User();
        user.fetch({user,
                     success: function(response){
                             user.classlist = new classes(response.attributes.classes);
           });

   }

});

我从我的服务器返回了一个序列化的json数组,我试图将嵌套对象放入我的嵌套集合中.

这个答案,我认为会让我在那里,但我错过了一些东西. 如何使用Backbone.js从嵌套的JSON构建集合/模型

我试图用我的嵌套模型填充的json是

{first_name: "Pete",age: 27, classes: [{class_name: "math", class_code: 42},{class_name: "french", class_code: 18}]}

我创建了我的用户模型

MyApp.Models.Users = = Backbone.Model.extend({

    initialize: function(){
        this.classlist = new MyApp.Collections.ClassList();

        this.classlist.parent = this;

    }

});

我曾尝试在另一页上关注该示例,并使用

      this.classlist = new MyApp.Collections.ClassList(this.get('classes'));

        this.classlist.parent = this;

this.get('classes')返回undefined.

我也试过通过this.attributes.classes获取classes数组,但这也是未定义的.

------------更新为包括重新初始化--------------------我正在初始化用户和类的函数用户路由并称为重新初始化.我使用此函数来获取用户及其类并存储该对象.

re_initialize: function(id){
            user = new MyApp.Models.User();
            MyApp.editingClasses.url = 'classes/'+id;
            MyApp.editingClasses.fetch({
                        success: function(response){
                        MyApp.editingClasses.parse(response);
                        }
            });

        new …

nested backbone.js

3
推荐指数
1
解决办法
5602
查看次数