我的意思是我要人为地创建它。

这是出于测试目的。

但是对于模型来说,这非常简单。我只设置了defaults,就实例化了模型对象,从那里我可以使用this.model.toJSON()来获取创建的数据。

我想对集合使用相同的技巧。有没有类似的方法可以做到这一点?我想要做的是让集合创建Model默认值的x(在这种情况下为8)副本。

基本上是我之前为模型所做的,但是由于它适用于Collection,所以稍微复杂一点。

这是实际的用例。应该很简单。

/**Model
**/

    // name, picture, time, tweet, h_file
    var FeedRow = Backbone.Model.extend({
        Name: 'FeedRow',
        defaults: {
            name: "default",
            picture: 0,
            time: "0",
            tweet: "default",
            h_file: "default"
        }
    });

/**Collection
**/

    var FeedTable = Backbone.Collection.extend({
        Name: 'FeedTable',
        model: FeedRow
    });

最佳答案

构建FeedTable集合后,您可以在initialize方法中对其多次设置模型。

var FeedTable = Backbone.Collection.extend(
{
    Name: 'FeedTable',
    model: FeedRow,

    initialize: function()
    {
        model  = this.model;
        models = [];

        _.times(8, function(n)
        {
            models.push(new model({id: (n + 1)}));
        });

        this.set(models);
    }
});

10-01 04:33
查看更多