【发布时间】: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>
那么我应该创建两个集合并将消息模型与用户模型相关联,还是有办法按照我的方式构建模型并让它很好地与骨干一起使用。我喜欢哪个更好,我想简要解释一下原因。那将是非常棒的开发人员!
谢谢!
【问题讨论】: