共享Rails和JavaScript视图

Mik*_*ike 8 javascript templates ruby-on-rails

我有点困惑为什么这不是一个更普遍解决的问题但是这里.

我有我的Rails应用程序,可以正常生成我的视图.我在界面上有一些动态内容.

我想进行AJAX调用,返回JSON,并填充应用程序的动态部分.我会使用JS模板库来做到这一点.

我不想进行AJAX调用,让Rails处理视图并发回所有HTML.我希望响应是JSON,因此减少了处理和线路时间.

问题是我动态生成的HTML与我在Rails页面加载时静态生成的HTML(想想AJAX分页).HTML自然在我的ERB文件中.但是当我生成更多内容(比如第2页)时,我显然无法访问ERB文件,需要在JavaScript模板文件中复制HTML.

有没有解决方案允许我在Rails和JS之间分享我的观点?(我知道尝试将ERB与JS渲染...循环,条件等混合起来有点尴尬)

人们通常会选择渲染HTML并通过网络发送吗?或者,他们是否在页面加载时笨拙地执行JavaScript以使用JS模板进行渲染?

Mic*_*lis 3

我过去遇到过同样的问题。我能够用 Mustache 解决这个问题:http://mustache.github.com/当时没有简单的方法可以用 Rails 设置 Mustache,所以我不得不一起编写一些代码。看起来现在这里有一个库: https: //github.com/goodmike/mustache_rails3

更新:看起来现在有一个很好的宝石可以完成它,称为 stache: https: //github.com/agoragames/stache