- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
Backbone 新手在这里。我想开始在 Web 应用程序上使用主干(后端是 Ruby on Rails),直到现在它的客户端功能还很少(一些用于执行 slideToggles 的 jquery,以及几个 ajax 调用)。
我面临的一个问题是 Backbone 似乎构建为让您加载 javascript,然后让它向服务器请求数据(通常是 JSON),然后呈现 View 。这对我来说是 Not Acceptable 。我想获取源自服务器的 html,将其呈现给用户,然后用该 html 填充我的模型(之后,我可以接受从服务器请求 JSON 内容的模型)。
我猜我需要的是某种“逆向 View ”。给出这个 html 的东西:
<ul class="people">
<li><span class="name">Peter</span></li>
<li><span class="name">John</span></li>
</ul>
还有一个 People Collection 和一个带有 name 属性的 Person 模型,可以从中解析出 Peter 和 John(可能使用 View )。
这是存在的东西吗?我是不是以错误的方式处理了整件事?
最佳答案
可以将 Backbone.View
附加到服务器上预呈现的 HTML 页面。我在 this SO answer 中对此进行了更详细的描述。 .当 page needs to be crawlable by search engines .
但是,我不推荐通过解析服务器呈现的 HTML 来初始化模型状态的设计。我建议你改为 bootstrap将初始模型数据作为 JSON 发送到服务页面。像这样的东西:
<body>
<!-- your server-side template code here -->
<script>
window.bootstrap = {
people: <%= @people.to_json %>
};
</script>
</body>
当你初始化你的集合时,你可以简单地从引导数据初始化它们并丢弃引导集合:
var bootstrap = window.bootstrap || {};
var peopleCollection = new PeopleCollection(bootstrap.people);
delete window.bootstrap;
只需确保您的服务器端渲染引擎使用与 Bootstrap 相同的数据,这样您就可以保证渲染页面和初始模型数据同步。
或者,重新考虑像 Backbone 这样的框架是否适合您的需求。你说你的应用程序只有很少的 (javascript) 功能。你真的需要 Backbone 吗?这是一个很棒的框架,但您想要的是The Right Tool For The Job™。
关于javascript - 主干 逆向观,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14603824/
感谢 Stackoverflow 的工作人员,我已经让下面的脚本运行良好。它基本上删除了除了 A 列中的值与脚本中的值列表匹配的行之外的所有行。 但是,我想在大约 400 条记录上运行该脚本。当我将下
我正在像这样使用 ggplot2 绘制线条: ggplot(iris, aes(Petal.Width,Petal.Length,color=Species)) + geom_line() + the
我觉得我在这里缺少一些非常基本的东西...... 我正在尝试合并 Stata 中的两个数据集,FranceSQ.dta 和 FranceHQ.dta。它们都有一个我创建的名为“uid”的变量,用于唯一
我编写了一段代码,用于从文本文件的列中读取值。为了输出值的数量,我使用了“长度”,效果很好......但我只需要计算唯一值的数量。 public class REading_Two_Files { p
我是 Python 新手,因此我的问题看起来非常愚蠢。我尝试制作一些制作二维数组的程序。一个函数将项目放入列表并返回一个数组。然后,第二个函数将第一个函数的结果放入外部列表中。我的程序如下所示: de
给定一个字典: data = {'18': [3.89, 1.28], '20': [1.39, 3.15], '15': [1.42, 3.10]} 我想挑选出与其他内容明显不同的项目,如 18 中
这个问题不太可能对任何 future 的访客有帮助;它只与一个较小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于全世界的互联网受众。如需帮助使此问题更广泛适用,visit the
我有一个应用程序,我希望在某些网络后端修改配置。 我最初的想法是将默认值存储在 plist 文件中,然后通过 JSON 从远程服务器请求更新值。我不喜欢这个,因为它是异步的,所以即使用户终止应用程序并
问题围绕康威的生命游戏以及如何为新一代同时执行所有规则。游戏遵循新世代的三个规则,即:恰好有三个活邻居的死细胞变为活细胞,恰好有一个活邻居的活细胞变为死细胞,具有三个以上活邻居的活细胞变为死细胞。原始
似乎没有内部联接,它会给我不同的值,但有了它,它就会显示所有这些值。为什么它没有给我独特的值(value)观? 她是我的代码: SELECT DISTINCT m.manager_accou
有人可以帮助我理解为什么我没有得到预期的输出吗?我有以下代码。 var targetArray = []; var tempVar = {}; var json = [ { id:1, ava
我正在 Matlab 上编写一个 OOP,一个用于分离电子邮件的朴素贝叶斯。像这样 classdef NaiveClass %NaiveClass what this will do is hold
我想在我的协议(protocol)和工厂中访问相同的值,因此我使用以下代码进行了测试: import time from multiprocessing import Process from twi
我有一个数据框,其中有一个“裤子”列,其中包含许多不同类型的裤子。大多数裤子都会从其类型开始。例如:Jeans- Replay-blue,或 Chino- Uniqlo-~,或者 Smart-Next
我对 Sprague–Grundy 定理感到困惑,该定理在 CodeChef 上尝试解决公平游戏时被用在许多问题中。它只是指出,公正的游戏等同于 nimber 或 grundy 值。游戏的结果取决于所
考虑这个程序: #include union myUnion { int x; long double y; }; int main() { union myUnion a;
我正在尝试构建一个查询来选择唯一的值组。我知道如何对值进行分组并选择不同的值,但我不知道如何选择不同的值组而不考虑所考虑元素的顺序。更准确地说: 我的 XML 是这样的: value1
我需要使用后端提供的链接下载文件。要下载文件,使用返回 Progress() 对象的异步 API。问题是 FlatMap 无法从 Publisher 映射至 Publisher .我要解决的另一个问题
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 7 年前。 Improve this ques
我了解 JWT 是安全的。但只是想知道一些我无法理解的概念。 假设身份验证服务器“A”将签名的 token 发送到应用程序服务器。如果我没记错的话签名是由服务器“A”上的私钥完成的。现在应用程序服务器
我是一名优秀的程序员,十分优秀!