如何在backbone.js中平铺嵌套模型

How to flatten down a nested model in backbone.js?

本文关键字:嵌套 模型 js backbone      更新时间:2023-09-26

我有一个嵌套模型,像这样:

ProgramGuide
    |-channels
        |-channel
            |-programs

现在我想要得到最后一个结束的节目,而不管频道。

ProgramGuide模型中我有一个方法:

lastProgram : function(){
   //how to find last ending program?    
}

那么,是否有一种好的方法来找到最后结束的程序,也许是一种方法来平铺程序的模型树,或者我必须写一个嵌套循环来实现这一点?

知道backbone依赖于下划线,所以总是有下划线方法可用我没有任何确切的代码示例,但我相信你不需要嵌套循环来运行你的结构,

我打赌你可以使用这些下划线方法,

  • 下划线flatten可能会使您的结构扁平化(可能会变得困难,因为您可以使用它获得正常的模型属性,应该需要一个解决方案,只有每个模型的.toJSON()
  • 下划线过滤器可用于仅过滤掉属性本身,或过滤程序列表
  • 下划线sortBy可用于对播放时间进行排序,以获得最后结束的节目
  • 下划线pluck可以用来提取ID,名称和结束时间,以消除结构中的所有混乱
今天晚些时候,我会试着想出一个例子但是我不能保证我什么时候有时间。