我从两个月开始使用Rails进行网络编程,最近开始使用Towerjs。
我有一个现有的rails 3.1后端,我将使用towerjs作为前端。 这意味着,rails具有现有的逻辑和数据库。
我可以在浏览器端使用towerjs来获取和设置带有Rails的数据到数据库吗?
我现在的想法是启动一个rails和towerjs服务器,并且两者都与json进行通信。 但是我现在不知道如何实现这些!
Tower紧密耦合,可在客户端和服务器上运行代码。
您最好看一下骨干.js之类的东西,因为它与服务器端设置无关。
我目前正在将Rails应用程序移植到单页应用程序。 经过大量黑客攻击后,我为客户端选择了主干,为服务器选择了node.js / express,并将所有的rails模型重构为ruby / grape API。 节点服务器使用真棒请求npm模块代理对Grape api的请求。 到目前为止非常高兴。
您可以完全在客户端上使用Tower.js。
文档[当前]集中了很多生成的应用程序,就像您的Rails,让您样板的JavaScript测试,配置您的服务器和数据库等。但是,你可以只需要underscore
和tower
在浏览器中,建立你需要什么车型在客户端上,然后通过ajax存储将它们连接到Rails后端。
<script src="/javascripts/vendor/javascripts/underscore.js"></script>
<script src="/javascripts/vendor/javascripts/tower.js"></script>
这里仍然需要文档(以及示例),但是它可以作为仅客户端的MVC。 像这样:
class App extends Tower.Application
@bootstrap: (data) ->
App.Post.load(data.posts) if data.posts
class App.Post extends Tower.Model
@field "title"
@field "body"
最初将JSON字符串加载到模型中的HTML文件
<body>
<script>
App.Post.bootstrap(<%= @posts.to_json %>);
</script>
</body>