【问题标题】:Backbone model structure?骨干模型结构?
【发布时间】:2014-03-22 19:10:45
【问题描述】:

我需要跟踪一个用户模型的消息集合,起初我认为这将是一个很棒的模型结构。

var myModel = {
    _id: 798698,
    username: "John",
    message: {
        message1: "Some cool messsage",
        message2: "I'm mad Ohio State lost"
    }
}

然后我想如果我想按从旧到新的顺序呈现所有用户的所有消息,我可以添加一个时间戳。这意味着我需要扩展模型。

var myModel = {
    _id: 798698,
    username: "John",
    message: {
        message1: {message: "Some cool messsage", sent: "3/22/2014 12:20"},
        message2: {message: "I'm mad Ohio State lost", sent: "3/22/2014 12:21"}
    }
}

对我来说,这是一个很好的结构,但我知道什么,我是新手。

不过,这会导致骨干网出现一些问题。如果我有一个所有消息的集合视图,则单个模型的 itemView 将分别包装在 el 中。所以我可以使用句柄来循环上面的消息对象,但它会像这样呈现。

<div class="model">

    <div class="message">
        John: Some cool message
    </div>
    <div class="message">
        John: I'm mad Ohio State lost
    </div>

</div>

你看到上面是包装的,这意味着如果有另一个用户模型。

var myModel2 = {
    _id: 798698,
    username: "Scottie",
    message: {
        message1: "Hey guys",
        message2: "I am the SEC player of the year."
    }
}

视图不会呈现消息列表,而是呈现模型块,就像这样。

<div class="model">

    <div class="message">
        John: Some cool message
    </div>
    <div class="message">
        John: I'm mad Ohio State lost
    </div>

</div>

<div class="model">

    <div class="message">
        Scottie: Hi Guys
    </div>
    <div class="message">
        Scottie: I am the SEC player of the year.
    </div>

</div>

我正在尝试一种可以呈现列表并按发送时间排序的结构。

例如,如果车队去......约翰,斯科蒂,约翰,斯科蒂......我可以这样渲染。

<div class="message">
    John: Some cool message
</div>
<div class="message">
    Scottie: Hi Guys
</div>
<div class="message">
    John: I'm mad Ohio State lost
</div>
<div class="message">
    Scottie: I am the SEC player of the year.
</div>

那么我应该创建两个集合并将消息模型与用户模型相关联,还是有办法按照我的方式构建模型并让它很好地与骨干一起使用。我喜欢哪个更好,我想简要解释一下原因。那将是非常棒的开发人员!

谢谢!

【问题讨论】:

    标签: javascript backbone.js


    【解决方案1】:

    看看 Backbone.Relational :

    http://backbonerelational.org/

    【讨论】:

    • 所以这是要走的路吗?好吧,我相信你,我实际上被建议在另一个项目中使用它,我只是不想学习这个插件,但我想这是一个非常有用的插件。那么关联比直接将消息添加到模型中更好吗?
    • 我不想用消息模型的集合填充数据库,这可能会创建 1k+ 文档。
    • 别担心,只是测试它。或者你可以自己连接你的对象,但是当已经有一个工具时为什么要这样做;)
    • True.. 查看文档,我已经对一件事感到困惑,我没有提到我正在使用木偶,我刚开始研究,我注意到当你使用关系时你扩展了类似的模型和你在木偶中的表现一样。我不能双重扩展一个模型来同时使用两者可以吗?
    • 也许木偶有一个类似关系数据的功能,哈哈?我刚刚进入它,但我仍然会如何加倍扩展,也许我以错误的方式看待它:)
    猜你喜欢
    • 2012-05-04
    • 1970-01-01
    • 2013-10-14
    • 2015-03-13
    • 2014-06-25
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多